1. 08 12月, 2020 1 次提交
  2. 08 8月, 2020 1 次提交
    • M
      mm: remove unneeded includes of <asm/pgalloc.h> · ca15ca40
      Mike Rapoport 提交于
      Patch series "mm: cleanup usage of <asm/pgalloc.h>"
      
      Most architectures have very similar versions of pXd_alloc_one() and
      pXd_free_one() for intermediate levels of page table.  These patches add
      generic versions of these functions in <asm-generic/pgalloc.h> and enable
      use of the generic functions where appropriate.
      
      In addition, functions declared and defined in <asm/pgalloc.h> headers are
      used mostly by core mm and early mm initialization in arch and there is no
      actual reason to have the <asm/pgalloc.h> included all over the place.
      The first patch in this series removes unneeded includes of
      <asm/pgalloc.h>
      
      In the end it didn't work out as neatly as I hoped and moving
      pXd_alloc_track() definitions to <asm-generic/pgalloc.h> would require
      unnecessary changes to arches that have custom page table allocations, so
      I've decided to move lib/ioremap.c to mm/ and make pgalloc-track.h local
      to mm/.
      
      This patch (of 8):
      
      In most cases <asm/pgalloc.h> header is required only for allocations of
      page table memory.  Most of the .c files that include that header do not
      use symbols declared in <asm/pgalloc.h> and do not require that header.
      
      As for the other header files that used to include <asm/pgalloc.h>, it is
      possible to move that include into the .c file that actually uses symbols
      from <asm/pgalloc.h> and drop the include from the header file.
      
      The process was somewhat automated using
      
      	sed -i -E '/[<"]asm\/pgalloc\.h/d' \
                      $(grep -L -w -f /tmp/xx \
                              $(git grep -E -l '[<"]asm/pgalloc\.h'))
      
      where /tmp/xx contains all the symbols defined in
      arch/*/include/asm/pgalloc.h.
      
      [rppt@linux.ibm.com: fix powerpc warning]
      Signed-off-by: NMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Reviewed-by: NPekka Enberg <penberg@kernel.org>
      Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>	[m68k]
      Cc: Abdul Haleem <abdhalee@linux.vnet.ibm.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
      Cc: Joerg Roedel <joro@8bytes.org>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Satheesh Rajendran <sathnaga@linux.vnet.ibm.com>
      Cc: Stafford Horne <shorne@gmail.com>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Joerg Roedel <jroedel@suse.de>
      Cc: Matthew Wilcox <willy@infradead.org>
      Link: http://lkml.kernel.org/r/20200627143453.31835-1-rppt@kernel.org
      Link: http://lkml.kernel.org/r/20200627143453.31835-2-rppt@kernel.orgSigned-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ca15ca40
  3. 24 7月, 2020 1 次提交
  4. 22 7月, 2020 2 次提交
  5. 30 6月, 2020 1 次提交
  6. 13 5月, 2020 1 次提交
  7. 05 5月, 2020 1 次提交
  8. 27 3月, 2020 1 次提交
  9. 10 1月, 2020 1 次提交
    • R
      iommu/io-pgtable-arm: Rationalise TTBRn handling · d1e5f26f
      Robin Murphy 提交于
      TTBR1 values have so far been redundant since no users implement any
      support for split address spaces. Crucially, though, one of the main
      reasons for wanting to do so is to be able to manage each half entirely
      independently, e.g. context-switching one set of mappings without
      disturbing the other. Thus it seems unlikely that tying two tables
      together in a single io_pgtable_cfg would ever be particularly desirable
      or useful.
      
      Streamline the configs to just a single conceptual TTBR value
      representing the allocated table. This paves the way for future users to
      support split address spaces by simply allocating a table and dealing
      with the detailed TTBRn logistics themselves.
      Tested-by: NJordan Crouse <jcrouse@codeaurora.org>
      Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
      [will: Drop change to ttbr value]
      Signed-off-by: NWill Deacon <will@kernel.org>
      d1e5f26f
  10. 11 11月, 2019 6 次提交
  11. 05 11月, 2019 1 次提交
  12. 30 10月, 2019 1 次提交
  13. 15 10月, 2019 3 次提交
  14. 05 9月, 2019 2 次提交
  15. 30 7月, 2019 5 次提交
  16. 24 7月, 2019 1 次提交
  17. 25 6月, 2019 1 次提交
  18. 03 6月, 2019 6 次提交
  19. 11 2月, 2019 1 次提交
    • R
      iommu: Allow io-pgtable to be used outside of drivers/iommu/ · b77cf11f
      Rob Herring 提交于
      Move io-pgtable.h to include/linux/ and export alloc_io_pgtable_ops
      and free_io_pgtable_ops. This enables drivers outside drivers/iommu/ to
      use the page table library. Specifically, some ARM Mali GPUs use the
      ARM page table formats.
      
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Robin Murphy <robin.murphy@arm.com>
      Cc: Joerg Roedel <joro@8bytes.org>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: iommu@lists.linux-foundation.org
      Cc: linux-mediatek@lists.infradead.org
      Cc: linux-arm-msm@vger.kernel.org
      Signed-off-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NJoerg Roedel <jroedel@suse.de>
      b77cf11f
  20. 17 12月, 2018 2 次提交
  21. 03 12月, 2018 1 次提交
    • P
      iommu/ipmmu-vmsa: Make it explicitly non-modular · 8128ac3b
      Paul Gortmaker 提交于
      The Kconfig currently controlling compilation of this code is:
      
      drivers/iommu/Kconfig:config IPMMU_VMSA
      drivers/iommu/Kconfig:        bool "Renesas VMSA-compatible IPMMU"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not even used by this driver, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      Cc: Joerg Roedel <joro@8bytes.org>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: iommu@lists.linux-foundation.org
      Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NJoerg Roedel <jroedel@suse.de>
      8128ac3b