Introduce memory region concept (including device local memory)

Submitted by Matthew Auld on Feb. 14, 2019, 2:56 p.m.

Details

Reviewer None
Submitted Feb. 14, 2019, 2:56 p.m.
Last Updated June 28, 2019, 9:59 a.m.
Revision 2

Cover Letter(s)

Revision 1
      In preparation for upcoming devices with device local memory, introduce the
concept of different memory regions, and a simple buddy allocator to manage
them.

At the end of the series are a couple of HAX patches which introduce a fake
local memory region for testing purposes. Currently smoke tested on a Skull
Canyon device.

Abdiel Janulgue (13):
  drm/i915: Add memory region information to device_info
  drm/i915/lmem: add helper to get CPU visible pfn
  drm/i915/lmem: support kernel mapping
  drm/i915: Split out GTT fault handler to make it generic
  drm/i915: Set correct vmf source pages for gem objects
  drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET
  drm/i915: cpu-map based dumb buffers
  drm/i915: Add fill_pages handler for dma_buf imported objects
  UPSTREAM: drm/i915/query: Split out query item checks
  drm/i915/query: Expose memory regions through the query uAPI
  drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION
  drm/i915: enumerate and init each supported region
  drm/i915: setup io-mapping for LMEM

Daniele Ceraolo Spurio (5):
  drm/i915: define HAS_MAPPABLE_APERTURE
  drm/i915: do not map aperture if it is not available.
  drm/i915: expose missing map_gtt support to users
  drm/i915: set num_fence_regs to 0 if there is no aperture
  drm/i915: error capture with no ggtt slot

Matthew Auld (23):
  drm/i915: support 1G pages for the 48b PPGTT
  drm/i915: enable platform support for 1G pages
  drm/i915: buddy allocator
  drm/i915: introduce intel_memory_region
  drm/i915/region: support basic eviction
  drm/i915/region: support continuous allocations
  drm/i915/region: support volatile objects
  drm/i915: support creating LMEM objects
  drm/i915/selftests: exercise writes to LMEM
  drm/i915/selftests: exercise huge-pages for LMEM
  drm/i915: support object clearing via blitter engine
  drm/i915: introduce kernel blitter_context
  drm/i915: support copying objects via blitter engine
  drm/i915: support basic object migration
  drm/i915/lmem: support CPU relocations
  drm/i915: add vfunc for pread
  drm/i915/lmem: support pread
  drm/i915/lmem: support pwrite
  drm/i915/lmem: include debugfs metrics
  drm/i915: treat shmem as a region
  drm/i915: treat stolen as a region
  HAX drm/i915: add the fake lmem region
  HAX drm/i915/lmem: default userspace allocations to LMEM

Michal Wajdeczko (1):
  drm/i915: Don't try to place HWS in non-existing mappable region

 arch/x86/kernel/early-quirks.c                |   26 +
 drivers/gpu/drm/i915/Makefile                 |    3 +
 drivers/gpu/drm/i915/i915_debugfs.c           |   31 +
 drivers/gpu/drm/i915/i915_drv.c               |   19 +-
 drivers/gpu/drm/i915/i915_drv.h               |   37 +-
 drivers/gpu/drm/i915/i915_gem.c               | 1005 +++++++++++++++--
 drivers/gpu/drm/i915/i915_gem_buddy.c         |  206 ++++
 drivers/gpu/drm/i915/i915_gem_buddy.h         |  118 ++
 drivers/gpu/drm/i915/i915_gem_context.c       |   13 +
 drivers/gpu/drm/i915/i915_gem_dmabuf.c        |   14 +
 drivers/gpu/drm/i915/i915_gem_execbuffer.c    |   67 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c           |  136 ++-
 drivers/gpu/drm/i915/i915_gem_gtt.h           |    4 +-
 drivers/gpu/drm/i915/i915_gem_object.c        |    1 +
 drivers/gpu/drm/i915/i915_gem_object.h        |   43 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c      |   59 +
 drivers/gpu/drm/i915/i915_gem_stolen.c        |   66 +-
 drivers/gpu/drm/i915/i915_gpu_error.c         |   63 +-
 drivers/gpu/drm/i915/i915_pci.c               |   18 +-
 drivers/gpu/drm/i915/i915_query.c             |   97 +-
 drivers/gpu/drm/i915/intel_device_info.h      |    1 +
 drivers/gpu/drm/i915/intel_engine_cs.c        |    2 +-
 drivers/gpu/drm/i915/intel_gpu_commands.h     |    3 +
 drivers/gpu/drm/i915/intel_memory_region.c    |  286 +++++
 drivers/gpu/drm/i915/intel_memory_region.h    |  140 +++
 drivers/gpu/drm/i915/intel_region_lmem.c      |  388 +++++++
 drivers/gpu/drm/i915/intel_region_lmem.h      |   46 +
 drivers/gpu/drm/i915/selftests/huge_pages.c   |  204 +++-
 .../gpu/drm/i915/selftests/i915_gem_buddy.c   |  209 ++++
 .../gpu/drm/i915/selftests/i915_gem_object.c  |  150 +++
 .../drm/i915/selftests/i915_live_selftests.h  |    1 +
 .../drm/i915/selftests/i915_mock_selftests.h  |    2 +
 .../drm/i915/selftests/intel_memory_region.c  |  911 +++++++++++++++
 .../gpu/drm/i915/selftests/mock_gem_device.c  |    8 +-
 drivers/gpu/drm/i915/selftests/mock_region.c  |   75 ++
 drivers/gpu/drm/i915/selftests/mock_region.h  |   35 +
 include/drm/i915_drm.h                        |    3 +
 include/uapi/drm/i915_drm.h                   |   94 +-
 38 files changed, 4396 insertions(+), 188 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_gem_buddy.c
 create mode 100644 drivers/gpu/drm/i915/i915_gem_buddy.h
 create mode 100644 drivers/gpu/drm/i915/intel_memory_region.c
 create mode 100644 drivers/gpu/drm/i915/intel_memory_region.h
 create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.c
 create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_buddy.c
 create mode 100644 drivers/gpu/drm/i915/selftests/intel_memory_region.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.h
    
Revision 2
      In preparation for upcoming devices with device local memory, introduce the
concept of different memory regions, and a simple buddy allocator to manage
them.

One of the concerns raised from v1 was around not using enough of TTM, which is
a fair criticism, so trying to get better alignment here is something we are
investigating, though currently that is still WIP so in the meantime v2 still
continues to push more of the low-level details forward, but not yet the TTM
interactions.

Abdiel Janulgue (11):
  drm/i915: Add memory region information to device_info
  drm/i915: setup io-mapping for LMEM
  drm/i915/lmem: support kernel mapping
  drm/i915: enumerate and init each supported region
  drm/i915: Allow i915 to manage the vma offset nodes instead of drm
    core
  drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET
  drm/i915/lmem: add helper to get CPU accessible offset
  drm/i915: Add cpu and lmem fault handlers
  drm/i915: cpu-map based dumb buffers
  drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION
  drm/i915/query: Expose memory regions through the query uAPI

Daniele Ceraolo Spurio (5):
  drm/i915: define HAS_MAPPABLE_APERTURE
  drm/i915: do not map aperture if it is not available.
  drm/i915: expose missing map_gtt support to users
  drm/i915: set num_fence_regs to 0 if there is no aperture
  drm/i915: error capture with no ggtt slot

Matthew Auld (20):
  drm/i915: buddy allocator
  drm/i915: introduce intel_memory_region
  drm/i915/region: support basic eviction
  drm/i915/region: support continuous allocations
  drm/i915/region: support volatile objects
  drm/i915: support creating LMEM objects
  drm/i915/blt: support copying objects
  drm/i915/selftests: move gpu-write-dw into utils
  drm/i915/selftests: add write-dword test for LMEM
  drm/i915/selftests: don't just test CACHE_NONE for huge-pages
  drm/i915/selftest: extend coverage to include LMEM huge-pages
  drm/i915/lmem: support CPU relocations
  drm/i915/lmem: support pread
  drm/i915/lmem: support pwrite
  drm/i915: treat shmem as a region
  drm/i915: treat stolen as a region
  drm/i915/selftests: check for missing aperture
  drm/i915: support basic object migration
  HAX drm/i915: add the fake lmem region
  HAX drm/i915/lmem: default userspace allocations to LMEM

Michal Wajdeczko (1):
  drm/i915: Don't try to place HWS in non-existing mappable region

 drivers/gpu/drm/i915/Makefile                 |   3 +
 drivers/gpu/drm/i915/gem/i915_gem_context.c   |  12 +
 drivers/gpu/drm/i915/gem/i915_gem_context.h   |   2 +
 .../gpu/drm/i915/gem/i915_gem_execbuffer.c    |  69 +-
 drivers/gpu/drm/i915/gem/i915_gem_ioctls.h    |   4 +
 drivers/gpu/drm/i915/gem/i915_gem_mman.c      | 370 +++++++-
 drivers/gpu/drm/i915/gem/i915_gem_object.c    | 278 ++++++
 drivers/gpu/drm/i915/gem/i915_gem_object.h    |  27 +-
 .../gpu/drm/i915/gem/i915_gem_object_blt.c    | 135 +++
 .../gpu/drm/i915/gem/i915_gem_object_blt.h    |   8 +
 .../gpu/drm/i915/gem/i915_gem_object_types.h  |  44 +
 drivers/gpu/drm/i915/gem/i915_gem_pages.c     |  20 +-
 drivers/gpu/drm/i915/gem/i915_gem_shmem.c     |  67 +-
 drivers/gpu/drm/i915/gem/i915_gem_stolen.c    |  66 +-
 .../gpu/drm/i915/gem/selftests/huge_pages.c   | 329 +++++---
 .../i915/gem/selftests/i915_gem_coherency.c   |   5 +-
 .../drm/i915/gem/selftests/i915_gem_context.c | 134 +--
 .../drm/i915/gem/selftests/i915_gem_mman.c    |  15 +-
 .../i915/gem/selftests/i915_gem_object_blt.c  | 105 +++
 .../drm/i915/gem/selftests/igt_gem_utils.c    | 135 +++
 .../drm/i915/gem/selftests/igt_gem_utils.h    |  16 +
 drivers/gpu/drm/i915/gt/intel_engine_cs.c     |   2 +-
 drivers/gpu/drm/i915/gt/intel_gpu_commands.h  |   3 +-
 drivers/gpu/drm/i915/gt/intel_reset.c         |  19 +-
 drivers/gpu/drm/i915/gt/selftest_hangcheck.c  |  14 +-
 drivers/gpu/drm/i915/i915_buddy.c             | 413 +++++++++
 drivers/gpu/drm/i915/i915_buddy.h             | 115 +++
 drivers/gpu/drm/i915/i915_drv.c               |  38 +-
 drivers/gpu/drm/i915/i915_drv.h               |  25 +-
 drivers/gpu/drm/i915/i915_gem.c               |  75 +-
 drivers/gpu/drm/i915/i915_gem_fence_reg.c     |   6 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c           | 119 ++-
 drivers/gpu/drm/i915/i915_gpu_error.c         |  63 +-
 drivers/gpu/drm/i915/i915_params.c            |   3 +
 drivers/gpu/drm/i915/i915_params.h            |   3 +-
 drivers/gpu/drm/i915/i915_pci.c               |  29 +-
 drivers/gpu/drm/i915/i915_query.c             |  57 ++
 drivers/gpu/drm/i915/i915_vma.c               |  21 +-
 drivers/gpu/drm/i915/intel_device_info.h      |   1 +
 drivers/gpu/drm/i915/intel_memory_region.c    | 321 +++++++
 drivers/gpu/drm/i915/intel_memory_region.h    | 121 +++
 drivers/gpu/drm/i915/intel_region_lmem.c      | 404 +++++++++
 drivers/gpu/drm/i915/intel_region_lmem.h      |  30 +
 drivers/gpu/drm/i915/selftests/i915_buddy.c   | 491 +++++++++++
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c |   3 +
 .../drm/i915/selftests/i915_live_selftests.h  |   1 +
 .../drm/i915/selftests/i915_mock_selftests.h  |   2 +
 .../drm/i915/selftests/intel_memory_region.c  | 792 ++++++++++++++++++
 .../gpu/drm/i915/selftests/mock_gem_device.c  |   9 +-
 drivers/gpu/drm/i915/selftests/mock_region.c  |  59 ++
 drivers/gpu/drm/i915/selftests/mock_region.h  |  16 +
 include/uapi/drm/i915_drm.h                   |  97 +++
 52 files changed, 4780 insertions(+), 416 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_buddy.c
 create mode 100644 drivers/gpu/drm/i915/i915_buddy.h
 create mode 100644 drivers/gpu/drm/i915/intel_memory_region.c
 create mode 100644 drivers/gpu/drm/i915/intel_memory_region.h
 create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.c
 create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_buddy.c
 create mode 100644 drivers/gpu/drm/i915/selftests/intel_memory_region.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.h
    

Revisions

Patches download mbox

# Name Submitter State
[RFC,01/42] drm/i915: support 1G pages for the 48b PPGTT Matthew Auld New
[RFC,02/42] drm/i915: enable platform support for 1G pages Matthew Auld New
[RFC,03/42] drm/i915: buddy allocator Matthew Auld New
[RFC,04/42] drm/i915: introduce intel_memory_region Matthew Auld New
[RFC,05/42] drm/i915/region: support basic eviction Matthew Auld New
[RFC,06/42] drm/i915/region: support continuous allocations Matthew Auld New
[RFC,07/42] drm/i915/region: support volatile objects Matthew Auld New
[RFC,08/42] drm/i915: Add memory region information to device_info Matthew Auld New
[RFC,09/42] drm/i915: support creating LMEM objects Matthew Auld New
[RFC,10/42] drm/i915/lmem: add helper to get CPU visible pfn Matthew Auld New
[RFC,11/42] drm/i915/selftests: exercise writes to LMEM Matthew Auld New
[RFC,12/42] drm/i915/selftests: exercise huge-pages for LMEM Matthew Auld New
[RFC,13/42] drm/i915: support object clearing via blitter engine Matthew Auld New
[RFC,14/42] drm/i915: introduce kernel blitter_context Matthew Auld New
[RFC,15/42] drm/i915: support copying objects via blitter engine Matthew Auld New
[RFC,16/42] drm/i915: support basic object migration Matthew Auld New
[RFC,17/42] drm/i915/lmem: support kernel mapping Matthew Auld New
[RFC,18/42] drm/i915/lmem: support CPU relocations Matthew Auld New
[RFC,19/42] drm/i915: add vfunc for pread Matthew Auld New
[RFC,20/42] drm/i915/lmem: support pread Matthew Auld New
[RFC,21/42] drm/i915/lmem: support pwrite Matthew Auld New
[RFC,22/42] drm/i915: define HAS_MAPPABLE_APERTURE Matthew Auld New
[RFC,23/42] drm/i915: do not map aperture if it is not available. Matthew Auld New
[RFC,24/42] drm/i915: expose missing map_gtt support to users Matthew Auld New
[RFC,25/42] drm/i915: set num_fence_regs to 0 if there is no aperture Matthew Auld New
[RFC,26/42] drm/i915: error capture with no ggtt slot Matthew Auld New
[RFC,27/42] drm/i915: Don't try to place HWS in non-existing mappable region Matthew Auld New
[RFC,28/42] drm/i915: Split out GTT fault handler to make it generic Matthew Auld New
[RFC,29/42] drm/i915: Set correct vmf source pages for gem objects Matthew Auld New
[RFC,30/42] drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET Matthew Auld New
[RFC,31/42] drm/i915: cpu-map based dumb buffers Matthew Auld New
[RFC,32/42] drm/i915: Add fill_pages handler for dma_buf imported objects Matthew Auld New
[RFC,33/42] UPSTREAM: drm/i915/query: Split out query item checks Matthew Auld New
[RFC,34/42] drm/i915/query: Expose memory regions through the query uAPI Matthew Auld New
[RFC,35/42] drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION Matthew Auld New
[RFC,36/42] drm/i915/lmem: include debugfs metrics Matthew Auld New
[RFC,37/42] drm/i915: enumerate and init each supported region Matthew Auld New
[RFC,38/42] drm/i915: treat shmem as a region Matthew Auld New
[RFC,39/42] drm/i915: treat stolen as a region Matthew Auld New
[RFC,40/42] drm/i915: setup io-mapping for LMEM Matthew Auld New
[RFC,41/42] HAX drm/i915: add the fake lmem region Matthew Auld New
[RFC,42/42] HAX drm/i915/lmem: default userspace allocations to LMEM Matthew Auld New

Tests

$ dim checkpatch origin/drm-tip
3a398101dfda drm/i915: support 1G pages for the 48b PPGTT
e99e4b7bc632 drm/i915: enable platform support for 1G pages
ee6706cbf465 drm/i915: buddy allocator
-:25: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#25: 
new file mode 100644

-:30: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#30: FILE: drivers/gpu/drm/i915/i915_gem_buddy.c:1:
+/*

-:242: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#242: FILE: drivers/gpu/drm/i915/i915_gem_buddy.h:1:
+/*

-:336: ERROR:CODE_INDENT: code indent should use tabs where possible
#336: FILE: drivers/gpu/drm/i915/i915_gem_buddy.h:95:
+^I^I          struct i915_gem_buddy_block *block)$

-:336: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#336: FILE: drivers/gpu/drm/i915/i915_gem_buddy.h:95:
+i915_gem_buddy_block_size(struct i915_gem_buddy_mm *mm,
+		          struct i915_gem_buddy_block *block)

-:366: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#366: FILE: drivers/gpu/drm/i915/selftests/i915_gem_buddy.c:1:
+/*

-:511: ERROR:CODE_INDENT: code indent should use tabs where possible
#511: FILE: drivers/gpu/drm/i915/selftests/i915_gem_buddy.c:146:
+^I^I^I^I^I        order);$

-:533: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#533: FILE: drivers/gpu/drm/i915/selftests/i915_gem_buddy.c:168:
+				pr_err("buddy_alloc offset misaligned, offset=%llx, block_size=%llu\n",
+					offset, block_size);

total: 2 errors, 4 warnings, 2 checks, 544 lines checked
f88fcf2002da drm/i915: introduce intel_memory_region
-:68: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#68: 
new file mode 100644

-:73: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#73: FILE: drivers/gpu/drm/i915/intel_memory_region.c:1:
+/*

-:104: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#104: FILE: drivers/gpu/drm/i915/intel_memory_region.c:32:
+{
+

-:311: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#311: FILE: drivers/gpu/drm/i915/intel_memory_region.h:1:
+/*

-:362: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#362: FILE: drivers/gpu/drm/i915/intel_memory_region.h:52:
+	INTEL_MEMORY_UKNOWN, /* Should be last */

-:371: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'r' may be better as '(r)' to avoid precedence issues
#371: FILE: drivers/gpu/drm/i915/intel_memory_region.h:61:
+#define MEMORY_TYPE_FROM_REGION(r) (ilog2(r >> INTEL_MEMORY_TYPE_SHIFT))

-:372: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'r' may be better as '(r)' to avoid precedence issues
#372: FILE: drivers/gpu/drm/i915/intel_memory_region.h:62:
+#define MEMORY_INSTANCE_FROM_REGION(r) (ilog2(r & 0xffff))

-:386: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#386: FILE: drivers/gpu/drm/i915/intel_memory_region.h:76:
+	int (*init)(struct intel_memory_region *);

-:387: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#387: FILE: drivers/gpu/drm/i915/intel_memory_region.h:77:
+	void (*release)(struct intel_memory_region *);

-:389: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#389: FILE: drivers/gpu/drm/i915/intel_memory_region.h:79:
+	struct drm_i915_gem_object *

-:389: WARNING:FUNCTION_ARGUMENTS: function definition argument 'resource_size_t' should also have an identifier name
#389: FILE: drivers/gpu/drm/i915/intel_memory_region.h:79:
+	struct drm_i915_gem_object *

-:389: WARNING:FUNCTION_ARGUMENTS: function definition argument 'unsigned int' should also have an identifier name
#389: FILE: drivers/gpu/drm/i915/intel_memory_region.h:79:
+	struct drm_i915_gem_object *

-:404: CHECK:UNCOMMENTED_DEFINITION: struct mutex definition without comment
#404: FILE: drivers/gpu/drm/i915/intel_memory_region.h:94:
+	struct mutex mm_lock;

-:445: CHECK:LINE_SPACING: Please don't use multiple blank lines
#445: FILE: drivers/gpu/drm/i915/selftests/huge_pages.c:461:
 
+

-:475: ERROR:CODE_INDENT: code indent should use tabs where possible
#475: FILE: drivers/gpu/drm/i915/selftests/huge_pages.c:491:
+^I^I        &obj->memory_region->region.start);$

-:551: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#551: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:1:
+/*

-:634: WARNING:EMBEDDED_FUNCTION_NAME: Prefer using '"%s...", __func__' to using 'igt_mock_fill', this function's name, in a string
#634: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:84:
+			pr_err("igt_mock_fill failed, space still left in region\n");

-:697: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#697: FILE: drivers/gpu/drm/i915/selftests/mock_region.c:1:
+/*

-:774: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#774: FILE: drivers/gpu/drm/i915/selftests/mock_region.h:1:
+/*

total: 1 errors, 13 warnings, 5 checks, 730 lines checked
16282e810aa7 drm/i915/region: support basic eviction
eeac2ad5efed drm/i915/region: support continuous allocations
-:21: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#21: FILE: drivers/gpu/drm/i915/i915_gem_object.h:166:
+#define I915_BO_ALLOC_CONTIGUOUS (1<<1)
                                    ^

total: 0 errors, 0 warnings, 1 checks, 236 lines checked
c67d248a5ac8 drm/i915/region: support volatile objects
-:22: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#22: FILE: drivers/gpu/drm/i915/i915_gem_object.h:167:
+#define I915_BO_ALLOC_VOLATILE   (1<<2)
                                    ^

total: 0 errors, 0 warnings, 1 checks, 97 lines checked
161412751175 drm/i915: Add memory region information to device_info
534b79d42ca1 drm/i915: support creating LMEM objects
-:66: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#66: 
new file mode 100644

-:71: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#71: FILE: drivers/gpu/drm/i915/intel_region_lmem.c:1:
+/*

-:159: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#159: FILE: drivers/gpu/drm/i915/intel_region_lmem.h:1:
+/*

total: 0 errors, 3 warnings, 0 checks, 231 lines checked
e743041ee4d0 drm/i915/lmem: add helper to get CPU visible pfn
-:7: WARNING:COMMIT_MESSAGE: Missing commit description - Add an appropriate one

total: 0 errors, 1 warnings, 0 checks, 26 lines checked
10c8ccf90cfa drm/i915/selftests: exercise writes to LMEM
-:164: CHECK:SPACING: No space is necessary after a cast
#164: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:
+		base = (void __force *) io_mapping_map_atomic_wc(&obj->memory_region->iomap,

-:165: WARNING:LONG_LINE: line over 100 characters
#165: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:508:
+								 i915_gem_object_get_dma_address(obj, n));

total: 0 errors, 1 warnings, 1 checks, 243 lines checked
8be573b5def8 drm/i915/selftests: exercise huge-pages for LMEM
-:48: WARNING:LONG_LINE: line over 100 characters
#48: FILE: drivers/gpu/drm/i915/selftests/huge_pages.c:1148:
+								i915_gem_object_get_dma_address(obj, n));

total: 0 errors, 1 warnings, 0 checks, 145 lines checked
9cde284aeb6b drm/i915: support object clearing via blitter engine
-:197: WARNING:SPACE_BEFORE_TAB: please, no space before tabs
#197: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:178:
+#define XY_COLOR_BLT_CMD              ^I(2<<29 | 0x50<<22 | (7-2))$

-:197: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#197: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:178:
+#define XY_COLOR_BLT_CMD              	(2<<29 | 0x50<<22 | (7-2))
                                       	  ^

-:197: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#197: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:178:
+#define XY_COLOR_BLT_CMD              	(2<<29 | 0x50<<22 | (7-2))
                                       	             ^

-:197: CHECK:SPACING: spaces preferred around that '-' (ctx:VxV)
#197: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:178:
+#define XY_COLOR_BLT_CMD              	(2<<29 | 0x50<<22 | (7-2))
                                       	                      ^

-:216: WARNING:LINE_SPACING: Missing a blank line after declarations
#216: FILE: drivers/gpu/drm/i915/selftests/i915_gem_object.c:638:
+	struct rnd_state prng;
+	IGT_TIMEOUT(end);

total: 0 errors, 2 warnings, 3 checks, 254 lines checked
1228281fd8b2 drm/i915: introduce kernel blitter_context
9e466d7c9453 drm/i915: support copying objects via blitter engine
-:181: ERROR:SPACING: spaces required around that ':' (ctx:VxW)
#181: FILE: drivers/gpu/drm/i915/i915_gem.c:4437:
+	struct i915_address_space *vm = ctx->ppgtt ? &ctx->ppgtt->vm: &i915->ggtt.vm;
 	                                                            ^

-:233: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#233: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:181:
+#define GEN8_XY_SRC_COPY_BLT_CMD	((2<<29)|(0x53<<22)|8)
                                 	   ^

-:233: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#233: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:181:
+#define GEN8_XY_SRC_COPY_BLT_CMD	((2<<29)|(0x53<<22)|8)
                                 	        ^

-:233: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#233: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:181:
+#define GEN8_XY_SRC_COPY_BLT_CMD	((2<<29)|(0x53<<22)|8)
                                 	              ^

-:233: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#233: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:181:
+#define GEN8_XY_SRC_COPY_BLT_CMD	((2<<29)|(0x53<<22)|8)
                                 	                   ^

-:234: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#234: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:182:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22)|8)
                                  	   ^

-:234: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#234: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:182:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22)|8)
                                  	        ^

-:234: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#234: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:182:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22)|8)
                                  	              ^

-:234: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#234: FILE: drivers/gpu/drm/i915/intel_gpu_commands.h:182:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22)|8)
                                  	                   ^

total: 1 errors, 0 warnings, 8 checks, 302 lines checked
86d8e7614411 drm/i915: support basic object migration
-:84: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#84: FILE: drivers/gpu/drm/i915/i915_gem.c:4674:
+	GEM_BUG_ON(id >= INTEL_MEMORY_UKNOWN);

total: 0 errors, 1 warnings, 0 checks, 284 lines checked
30dae501f5a2 drm/i915/lmem: support kernel mapping
-:246: ERROR:CODE_INDENT: code indent should use tabs where possible
#246: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:688:
+        if (read_val != val) {$

-:246: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#246: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:688:
+        if (read_val != val) {$

-:295: WARNING:MEMORY_BARRIER: memory barrier without comment
#295: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:737:
+		wmb();

total: 1 errors, 2 warnings, 0 checks, 271 lines checked
f68e82eb67b5 drm/i915/lmem: support CPU relocations
-:22: WARNING:BOOL_BITFIELD: Avoid using bool as bitfield.  Prefer bool bitfields as unsigned int or u<8|16|32>
#22: FILE: drivers/gpu/drm/i915/i915_gem_execbuffer.c:268:
+		bool is_lmem : 1;

-:81: CHECK:SPACING: No space is necessary after a cast
#81: FILE: drivers/gpu/drm/i915/i915_gem_execbuffer.c:1098:
+		io_mapping_unmap_atomic((void __force __iomem *) unmask_page(cache->vaddr));

total: 0 errors, 1 warnings, 1 checks, 98 lines checked
c3e5e28bbbb0 drm/i915: add vfunc for pread
-:7: WARNING:COMMIT_MESSAGE: Missing commit description - Add an appropriate one

-:35: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct drm_i915_gem_object *' should also have an identifier name
#35: FILE: drivers/gpu/drm/i915/i915_gem_object.h:78:
+	int (*pread)(struct drm_i915_gem_object *,

-:35: WARNING:FUNCTION_ARGUMENTS: function definition argument 'const struct drm_i915_gem_pread *' should also have an identifier name
#35: FILE: drivers/gpu/drm/i915/i915_gem_object.h:78:
+	int (*pread)(struct drm_i915_gem_object *,

total: 0 errors, 3 warnings, 0 checks, 20 lines checked
2960c64a642d drm/i915/lmem: support pread
ed1b910c70d0 drm/i915/lmem: support pwrite
-:70: ERROR:POINTER_LOCATION: "(foo*)" should be "(foo *)"
#70: FILE: drivers/gpu/drm/i915/intel_region_lmem.c:151:
+		unwritten = copy_from_user((void __force*)vaddr + offset,

total: 1 errors, 0 warnings, 0 checks, 84 lines checked
ef4e64371f33 drm/i915: define HAS_MAPPABLE_APERTURE
-:20: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'dev_priv' may be better as '(dev_priv)' to avoid precedence issues
#20: FILE: drivers/gpu/drm/i915/i915_drv.h:2484:
+#define HAS_MAPPABLE_APERTURE(dev_priv) (dev_priv->ggtt.mappable_end > 0)

total: 0 errors, 0 warnings, 1 checks, 8 lines checked
229c95e955dc drm/i915: do not map aperture if it is not available.
-:40: CHECK:SPACING: No space is necessary after a cast
#40: FILE: drivers/gpu/drm/i915/i915_gem_gtt.c:3222:
+			(struct resource) DEFINE_RES_MEM(pci_resource_start(pdev, 2),

total: 0 errors, 0 warnings, 1 checks, 53 lines checked
09acc5004c77 drm/i915: expose missing map_gtt support to users
1b4f93df4ea9 drm/i915: set num_fence_regs to 0 if there is no aperture
d5778ede25c7 drm/i915: error capture with no ggtt slot
-:172: WARNING:LINE_SPACING: Missing a blank line after declarations
#172: FILE: drivers/gpu/drm/i915/i915_gpu_error.c:1821:
+		const u64 slot = ggtt->error_capture.start;
+		ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE);

total: 0 errors, 1 warnings, 0 checks, 148 lines checked
3fce44863dc2 drm/i915: Don't try to place HWS in non-existing mappable region
ef85f5c27c7e drm/i915: Split out GTT fault handler to make it generic
74497cf26f72 drm/i915: Set correct vmf source pages for gem objects
-:99: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#99: FILE: drivers/gpu/drm/i915/i915_gem.c:4220:
+int i915_gem_vmf_fill_pages_cpu(struct drm_i915_gem_object *obj,
+					 struct vm_fault *vmf,

-:117: ERROR:CODE_INDENT: code indent should use tabs where possible
#117: FILE: drivers/gpu/drm/i915/i915_gem.c:4238:
+                                  __pfn_to_pfn_t(pfn, PFN_DEV));$

-:117: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#117: FILE: drivers/gpu/drm/i915/i915_gem.c:4238:
+	vmf_ret = vmf_insert_mixed(area, vmf->address,
+                                  __pfn_to_pfn_t(pfn, PFN_DEV));

-:117: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#117: FILE: drivers/gpu/drm/i915/i915_gem.c:4238:
+                                  __pfn_to_pfn_t(pfn, PFN_DEV));$

-:144: CHECK:LINE_SPACING: Please don't use multiple blank lines
#144: FILE: drivers/gpu/drm/i915/i915_gem.c:4875:
 
+

-:157: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct drm_i915_gem_object *' should also have an identifier name
#157: FILE: drivers/gpu/drm/i915/i915_gem_object.h:85:
+	int (*vmf_fill_pages)(struct drm_i915_gem_object *, struct vm_fault *,

-:157: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct vm_fault *' should also have an identifier name
#157: FILE: drivers/gpu/drm/i915/i915_gem_object.h:85:
+	int (*vmf_fill_pages)(struct drm_i915_gem_object *, struct vm_fault *,

-:157: WARNING:FUNCTION_ARGUMENTS: function definition argument 'pgoff_t' should also have an identifier name
#157: FILE: drivers/gpu/drm/i915/i915_gem_object.h:85:
+	int (*vmf_fill_pages)(struct drm_i915_gem_object *, struct vm_fault *,

total: 1 errors, 4 warnings, 3 checks, 170 lines checked
740855ce4e91 drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET
-:96: ERROR:CODE_INDENT: code indent should use tabs where possible
#96: FILE: drivers/gpu/drm/i915/i915_gem.c:2142:
+^I        /* Re-map object with existing different map-type */$

-:158: ERROR:CODE_INDENT: code indent should use tabs where possible
#158: FILE: drivers/gpu/drm/i915/i915_gem.c:2213:
+        return __assign_gem_object_mmap_data(file, args->handle,$

-:158: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#158: FILE: drivers/gpu/drm/i915/i915_gem.c:2213:
+        return __assign_gem_object_mmap_data(file, args->handle,$

-:246: WARNING:SPACE_BEFORE_TAB: please, no space before tabs
#246: FILE: include/uapi/drm/i915_drm.h:322:
+#define DRM_I915_GEM_MMAP_OFFSET   ^IDRM_I915_GEM_MMAP_GTT$

-:254: WARNING:LONG_LINE: line over 100 characters
#254: FILE: include/uapi/drm/i915_drm.h:381:
+#define DRM_IOCTL_I915_GEM_MMAP_OFFSET		DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_MMAP_OFFSET, struct drm_i915_gem_mmap_offset)

total: 2 errors, 3 warnings, 0 checks, 247 lines checked
11a7f845d866 drm/i915: cpu-map based dumb buffers
-:38: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#38: FILE: drivers/gpu/drm/i915/i915_drv.h:3034:
+int i915_gem_mmap_dumb(struct drm_file *file_priv, struct drm_device *dev,
 		      u32 handle, u64 *offset);

-:51: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#51: FILE: drivers/gpu/drm/i915/i915_gem.c:2161:
+i915_gem_mmap_dumb(struct drm_file *file,
 		  struct drm_device *dev,

total: 0 errors, 0 warnings, 2 checks, 41 lines checked
ab19cda1cb91 drm/i915: Add fill_pages handler for dma_buf imported objects
469de78b2f36 UPSTREAM: drm/i915/query: Split out query item checks
-:19: ERROR:POINTER_LOCATION: "foo* bar" should be "foo *bar"
#19: FILE: drivers/gpu/drm/i915/i915_query.c:13:
+static int init_query_item_check(void* data_ptr, size_t data_sz,

total: 1 errors, 0 warnings, 0 checks, 61 lines checked
98f3c6f1237a drm/i915/query: Expose memory regions through the query uAPI
-:108: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#108: FILE: include/uapi/drm/i915_drm.h:1845:
+struct drm_i915_memory_region_info {
+

-:135: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#135: FILE: include/uapi/drm/i915_drm.h:1872:
+struct drm_i915_query_memory_region_info {
+

total: 0 errors, 0 warnings, 2 checks, 124 lines checked
0a4924fd6d3c drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION
-:24: WARNING:LONG_LINE: line over 100 characters
#24: FILE: drivers/gpu/drm/i915/i915_drv.c:3019:
+	DRM_IOCTL_DEF_DRV(I915_GEM_OBJECT_SETPARAM, i915_gem_object_setparam_ioctl, DRM_RENDER_ALLOW),

-:59: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#59: FILE: drivers/gpu/drm/i915/i915_gem.c:2270:
+	return INTEL_MEMORY_UKNOWN;

-:75: ERROR:CODE_INDENT: code indent should use tabs where possible
#75: FILE: drivers/gpu/drm/i915/i915_gem.c:2286:
+^I        return -ENOENT;$

-:81: ERROR:CODE_INDENT: code indent should use tabs where possible
#81: FILE: drivers/gpu/drm/i915/i915_gem.c:2292:
+^I        goto err;$

-:96: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#96: FILE: drivers/gpu/drm/i915/i915_gem.c:2307:
+		if (id == INTEL_MEMORY_UKNOWN) {

-:131: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#131: FILE: drivers/gpu/drm/i915/i915_gem.c:2342:
+{
+

-:1
$ dim sparse origin/drm-tip
Sparse version: v0.5.2
Commit: drm/i915: support 1G pages for the 48b PPGTT
Okay!

Commit: drm/i915: enable platform support for 1G pages
Okay!

Commit: drm/i915: buddy allocator
+./include/linux/slab.h:664:13: error: undefined identifier '__builtin_mul_overflow'
+./include/linux/slab.h:664:13: warning: call with no type!

Commit: drm/i915: introduce intel_memory_region
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3566:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3567:16: warning: expression using sizeof(void)
+./include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)

Commit: drm/i915/region: support basic eviction
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3567:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3569:16: warning: expression using sizeof(void)

Commit: drm/i915/region: support continuous allocations
Okay!

Commit: drm/i915/region: support volatile objects
Okay!

Commit: drm/i915: Add memory region information to device_info
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3569:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3571:16: warning: expression using sizeof(void)

Commit: drm/i915: support creating LMEM objects
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3571:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3576:16: warning: expression using sizeof(void)
+./include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)

Commit: drm/i915/lmem: add helper to get CPU visible pfn
Okay!

Commit: drm/i915/selftests: exercise writes to LMEM
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22:    expected unsigned int [noderef] [usertype] <asn:2>*base
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22:    got void *<noident>
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22: warning: incorrect type in assignment (different address spaces)

Commit: drm/i915/selftests: exercise huge-pages for LMEM
+drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22:    expected unsigned int [noderef] [usertype] <asn:2>*base
+drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22:    got void *<noident>
+drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22: warning: incorrect type in assignment (different address spaces)

Commit: drm/i915: support object clearing via blitter engine
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3576:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3578:16: warning: expression using sizeof(void)

Commit: drm/i915: introduce kernel blitter_context
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3578:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3580:16: warning: expression using sizeof(void)

Commit: drm/i915: support copying objects via blitter engine
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3580:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3583:16: warning: expression using sizeof(void)

Commit: drm/i915: support basic object migration
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3583:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3588:16: warning: expression using sizeof(void)

Commit: drm/i915/lmem: support kernel mapping
+drivers/gpu/drm/i915/i915_gem.c:2261:42:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/i915_gem.c:2261:42:    got void *[assigned] ptr
+drivers/gpu/drm/i915/i915_gem.c:2261:42: warning: incorrect type in argument 1 (different address spaces)
+drivers/gpu/drm/i915/i915_gem.c:2645:51:    expected void *
+drivers/gpu/drm/i915/i915_gem.c:2645:51:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/i915_gem.c:2645:51: warning: incorrect type in return expression (different address spaces)
+drivers/gpu/drm/i915/i915_gem.c:2727:42:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/i915_gem.c:2727:42:    got void *[assigned] ptr
+drivers/gpu/drm/i915/i915_gem.c:2727:42: warning: incorrect type in argument 1 (different address spaces)
-O:drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22:    expected unsigned int [noderef] [usertype] <asn:2>*base
-O:drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22:    got void *<noident>
-O:drivers/gpu/drm/i915/selftests/huge_pages.c:1147:22: warning: incorrect type in assignment (different address spaces)
-O:drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22:    expected unsigned int [noderef] [usertype] <asn:2>*base
-O:drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22:    got void *<noident>
-O:drivers/gpu/drm/i915/selftests/intel_memory_region.c:507:22: warning: incorrect type in assignment (different address spaces)
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:716:15:    expected unsigned int [noderef] [usertype] <asn:2>*vaddr
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:716:15:    got void *
+drivers/gpu/drm/i915/selftests/intel_memory_region.c:716:15: warning: incorrect type in assignment (different address spaces)

Commit: drm/i915/lmem: support CPU relocations
+drivers/gpu/drm/i915/i915_gem_execbuffer.c:1112:15:    expected void *vaddr
+drivers/gpu/drm/i915/i915_gem_execbuffer.c:1112:15:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/i915_gem_execbuffer.c:1112:15: warning: incorrect type in assignment (different address spaces)

Commit: drm/i915: add vfunc for pread
Okay!

Commit: drm/i915/lmem: support pread
Okay!

Commit: drm/i915/lmem: support pwrite
Okay!

Commit: drm/i915: define HAS_MAPPABLE_APERTURE
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3588:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3590:16: warning: expression using sizeof(void)

Commit: drm/i915: do not map aperture if it is not available.
Okay!

Commit: drm/i915: expose missing map_gtt support to users
Okay!

Commit: drm/i915: set num_fence_regs to 0 if there is no aperture
Okay!

Commit: drm/i915: error capture with no ggtt slot
+drivers/gpu/drm/i915/i915_gpu_error.c:1063:27:    expected void *s
+drivers/gpu/drm/i915/i915_gpu_error.c:1063:27:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/i915_gpu_error.c:1063:27: warning: incorrect type in assignment (different address spaces)
+drivers/gpu/drm/i915/i915_gpu_error.c:1065:49:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/i915_gpu_error.c:1065:49:    got void *s
+drivers/gpu/drm/i915/i915_gpu_error.c:1065:49: warning: incorrect type in argument 1 (different address spaces)

Commit: drm/i915: Don't try to place HWS in non-existing mappable region
Okay!

Commit: drm/i915: Split out GTT fault handler to make it generic
Okay!

Commit: drm/i915: Set correct vmf source pages for gem objects
+          ^~
+                           ^~~~~~~~~~~~~~~~~~~~~~~
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    expected void [noderef] <asn:4>**slot
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    expected void **slot
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    expected void **slot
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    expected void **slot
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    got void [noderef] <asn:4>**
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    got void [noderef] <asn:4>**
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    got void [noderef] <asn:4>**
-drivers/gpu/drm/i915/gvt/gtt.c:757:9:    got void **slot
-drivers/gpu/drm/i915/gvt/gtt.c:757:9: warning: incorrect type in argument 1 (different address spaces)
-drivers/gpu/drm/i915/gvt/gtt.c:757:9: warning: incorrect type in assignment (different address spaces)
-drivers/gpu/drm/i915/gvt/gtt.c:757:9: warning: incorrect type in assignment (different address spaces)
-drivers/gpu/drm/i915/gvt/gtt.c:757:9: warning: incorrect type in assignment (different address spaces)
-drivers/gpu/drm/i915/gvt/gtt.c:758:45:    expected void [noderef] <asn:4>**slot
-drivers/gpu/drm/i915/gvt/gtt.c:758:45:    got void **slot
-drivers/gpu/drm/i915/gvt/gtt.c:758:45: warning: incorrect type in argument 1 (different address spaces)
-drivers/gpu/drm/i915/gvt/mmio.c:282:23: warning: memcpy with byte count of 279040
-drivers/gpu/drm/i915/gvt/mmio.c:283:23: warning: memcpy with byte count of 279040
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/gvt/vgpu.c:196:48: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_drv.h:3591:16: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/i915_gem.c:2182:10: error: ‘struct drm_i915_gem_object’ has no member named ‘mmap_origin’
+drivers/gpu/drm/i915/i915_gem.c:2182:24: error: no member 'mmap_origin' in struct drm_i915_gem_object
+drivers/gpu/drm/i915/i915_gem.c:2182:24: warning: unknown expression (8 46)
+drivers/gpu/drm/i915/i915_gem.c:2182:27: error: ‘I915_MMAP_ORIGIN_OFFSET’ undeclared (first use in this function); did you mean ‘DUMP_PREFIX_OFFSET’?
+drivers/gpu/drm/i915/i915_gem.c:2182:27: note: each undeclared identifier is reported only once for each function it appears in
+drivers/gpu/drm/i915/i915_gem.c: In function ‘i915_gem_mmap’:
-drivers/gpu/drm/i915/i915_gpu_error.c:1023:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_gpu_error.c:1023:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_gpu_error.c:1063:27:    expected void *s
-drivers/gpu/drm/i915/i915_gpu_error.c:1063:27:    got void [noderef] <asn:2>*
-drivers/gpu/drm/i915/i915_gpu_error.c:1063:27: warning: incorrect type in assignment (different address spaces)
-drivers/gpu/drm/i915/i915_gpu_error.c:1065:49:    expected void [noderef] <asn:2>*vaddr
-drivers/gpu/drm/i915/i915_gpu_error.c:1065:49:    got void *s
-drivers/gpu/drm/i915/i915_gpu_error.c:1065:49: warning: incorrect type in argument 1 (different address spaces)
-drivers/gpu/drm/i915/i915_gpu_error.c:924:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_gpu_error.c:924:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/i915_perf.c:1422:15: warning: memset with byte count of 16777216
-drivers/gpu/drm/i915/i915_perf.c:1480:15: warning: memset with byte count of 16777216
-drivers/gpu/drm/i915/icl_dsi.c:129:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_ddi.c:652:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_ddi.c:654:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp_aux_backlight.c:157:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1405:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1775:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1775:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1928:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1948:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1948:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1970:58: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:1970:58: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:230:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:275:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:275:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:368:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:368:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:4317:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:4317:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:4360:27: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:4360:27: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:5778:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6163:31: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6192:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6192:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6192:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6192:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6193:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6193:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6193:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6193:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6194:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6194:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6194:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6194:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6195:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6195:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6195:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6195:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6196:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6196:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6196:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dp.c:6196:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:574:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:574:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:575:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:575:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:710:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:710:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:752:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:752:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:784:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_dsi_vbt.c:784:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_fbdev.c:342:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1503:34: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1503:34: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1520:42: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1520:42: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1524:42: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1524:42: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_hdmi.c:1527:42: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_i2c.c:442:31: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_i2c.c:444:31: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_i2c.c:444:31: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_i2c.c:506:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_i2c.c:506:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1485:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1534:34: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/intel_panel.c:1534:34: warning: expression using sizeof(void)
-dri

Patches download mbox

# Name Submitter State
[v2,01/37] drm/i915: buddy allocator Matthew Auld New
[v2,02/37] drm/i915: introduce intel_memory_region Matthew Auld New
[v2,03/37] drm/i915/region: support basic eviction Matthew Auld New
[v2,04/37] drm/i915/region: support continuous allocations Matthew Auld New
[v2,05/37] drm/i915/region: support volatile objects Matthew Auld New
[v2,06/37] drm/i915: Add memory region information to device_info Matthew Auld New
[v2,07/37] drm/i915: support creating LMEM objects Matthew Auld New
[v2,08/37] drm/i915: setup io-mapping for LMEM Matthew Auld New
[v2,09/37] drm/i915/lmem: support kernel mapping Matthew Auld New
[v2,10/37] drm/i915/blt: support copying objects Matthew Auld New
[v2,11/37] drm/i915/selftests: move gpu-write-dw into utils Matthew Auld New
[v2,12/37] drm/i915/selftests: add write-dword test for LMEM Matthew Auld New
[v2,13/37] drm/i915/selftests: don't just test CACHE_NONE for huge-pages Matthew Auld New
[v2,14/37] drm/i915/selftest: extend coverage to include LMEM huge-pages Matthew Auld New
[v2,15/37] drm/i915/lmem: support CPU relocations Matthew Auld New
[v2,16/37] drm/i915/lmem: support pread Matthew Auld New
[v2,17/37] drm/i915/lmem: support pwrite Matthew Auld New
[v2,18/37] drm/i915: enumerate and init each supported region Matthew Auld New
[v2,19/37] drm/i915: treat shmem as a region Matthew Auld New
[v2,20/37] drm/i915: treat stolen as a region Matthew Auld New
[v2,21/37] drm/i915: define HAS_MAPPABLE_APERTURE Matthew Auld New
[v2,22/37] drm/i915: do not map aperture if it is not available. Matthew Auld New
[v2,23/37] drm/i915: expose missing map_gtt support to users Matthew Auld New
[v2,24/37] drm/i915: set num_fence_regs to 0 if there is no aperture Matthew Auld New
[v2,25/37] drm/i915/selftests: check for missing aperture Matthew Auld New
[v2,26/37] drm/i915: error capture with no ggtt slot Matthew Auld New
[v2,27/37] drm/i915: Don't try to place HWS in non-existing mappable region Matthew Auld New
[v2,28/37] drm/i915: Allow i915 to manage the vma offset nodes instead of drm core Matthew Auld New
[v2,29/37] drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET Matthew Auld New
[v2,30/37] drm/i915/lmem: add helper to get CPU accessible offset Matthew Auld New
[v2,31/37] drm/i915: Add cpu and lmem fault handlers Matthew Auld New
[v2,32/37] drm/i915: cpu-map based dumb buffers Matthew Auld New
[v2,33/37] drm/i915: support basic object migration Matthew Auld New
[v2,34/37] drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION Matthew Auld New
[v2,35/37] drm/i915/query: Expose memory regions through the query uAPI Matthew Auld New
[v2,36/37] HAX drm/i915: add the fake lmem region Matthew Auld New
[v2,37/37] HAX drm/i915/lmem: default userspace allocations to LMEM Matthew Auld New

Tests

CI Bug Log - changes from CI_DRM_6376 -> Patchwork_13460
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with Patchwork_13460 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_13460, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in Patchwork_13460:

### IGT changes ###

#### Possible regressions ####

  * igt@debugfs_test@read_all_entries:
    - fi-skl-iommu:       [PASS][1] -> [DMESG-WARN][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-iommu/igt@debugfs_test@read_all_entries.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-iommu/igt@debugfs_test@read_all_entries.html
    - fi-glk-dsi:         [PASS][3] -> [DMESG-WARN][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-glk-dsi/igt@debugfs_test@read_all_entries.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-glk-dsi/igt@debugfs_test@read_all_entries.html
    - fi-ivb-3770:        [PASS][5] -> [DMESG-WARN][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-ivb-3770/igt@debugfs_test@read_all_entries.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-ivb-3770/igt@debugfs_test@read_all_entries.html
    - fi-cml-u:           [PASS][7] -> [DMESG-WARN][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-cml-u/igt@debugfs_test@read_all_entries.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-cml-u/igt@debugfs_test@read_all_entries.html
    - fi-hsw-peppy:       [PASS][9] -> [DMESG-WARN][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-hsw-peppy/igt@debugfs_test@read_all_entries.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-hsw-peppy/igt@debugfs_test@read_all_entries.html
    - fi-icl-u3:          [PASS][11] -> [DMESG-WARN][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-icl-u3/igt@debugfs_test@read_all_entries.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-icl-u3/igt@debugfs_test@read_all_entries.html
    - fi-bdw-gvtdvm:      [PASS][13] -> [DMESG-WARN][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bdw-gvtdvm/igt@debugfs_test@read_all_entries.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bdw-gvtdvm/igt@debugfs_test@read_all_entries.html
    - fi-bxt-j4205:       [PASS][15] -> [DMESG-WARN][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bxt-j4205/igt@debugfs_test@read_all_entries.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bxt-j4205/igt@debugfs_test@read_all_entries.html
    - fi-kbl-7500u:       [PASS][17] -> [DMESG-WARN][18]
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-7500u/igt@debugfs_test@read_all_entries.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-7500u/igt@debugfs_test@read_all_entries.html
    - fi-snb-2520m:       [PASS][19] -> [DMESG-WARN][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-snb-2520m/igt@debugfs_test@read_all_entries.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-snb-2520m/igt@debugfs_test@read_all_entries.html
    - fi-gdg-551:         [PASS][21] -> [DMESG-WARN][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-gdg-551/igt@debugfs_test@read_all_entries.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-gdg-551/igt@debugfs_test@read_all_entries.html
    - fi-icl-u2:          [PASS][23] -> [DMESG-WARN][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-icl-u2/igt@debugfs_test@read_all_entries.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-icl-u2/igt@debugfs_test@read_all_entries.html
    - fi-cfl-8109u:       [PASS][25] -> [DMESG-WARN][26]
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-cfl-8109u/igt@debugfs_test@read_all_entries.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-cfl-8109u/igt@debugfs_test@read_all_entries.html
    - fi-pnv-d510:        [PASS][27] -> [DMESG-WARN][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-pnv-d510/igt@debugfs_test@read_all_entries.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-pnv-d510/igt@debugfs_test@read_all_entries.html
    - fi-ilk-650:         [PASS][29] -> [DMESG-WARN][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-ilk-650/igt@debugfs_test@read_all_entries.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-ilk-650/igt@debugfs_test@read_all_entries.html
    - fi-skl-6770hq:      [PASS][31] -> [DMESG-WARN][32]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-6770hq/igt@debugfs_test@read_all_entries.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-6770hq/igt@debugfs_test@read_all_entries.html
    - fi-byt-n2820:       [PASS][33] -> [DMESG-WARN][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-byt-n2820/igt@debugfs_test@read_all_entries.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-byt-n2820/igt@debugfs_test@read_all_entries.html
    - fi-elk-e7500:       [PASS][35] -> [DMESG-WARN][36]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-elk-e7500/igt@debugfs_test@read_all_entries.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-elk-e7500/igt@debugfs_test@read_all_entries.html
    - fi-skl-lmem:        [PASS][37] -> [DMESG-WARN][38]
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-lmem/igt@debugfs_test@read_all_entries.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-lmem/igt@debugfs_test@read_all_entries.html
    - fi-skl-6260u:       [PASS][39] -> [DMESG-WARN][40]
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-6260u/igt@debugfs_test@read_all_entries.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-6260u/igt@debugfs_test@read_all_entries.html
    - fi-snb-2600:        NOTRUN -> [DMESG-WARN][41]
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-snb-2600/igt@debugfs_test@read_all_entries.html
    - fi-hsw-4770r:       [PASS][42] -> [DMESG-WARN][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-hsw-4770r/igt@debugfs_test@read_all_entries.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-hsw-4770r/igt@debugfs_test@read_all_entries.html
    - fi-skl-gvtdvm:      [PASS][44] -> [DMESG-WARN][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-gvtdvm/igt@debugfs_test@read_all_entries.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-gvtdvm/igt@debugfs_test@read_all_entries.html
    - fi-kbl-guc:         [PASS][46] -> [DMESG-WARN][47]
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-guc/igt@debugfs_test@read_all_entries.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-guc/igt@debugfs_test@read_all_entries.html
    - fi-bsw-kefka:       [PASS][48] -> [DMESG-WARN][49]
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bsw-kefka/igt@debugfs_test@read_all_entries.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bsw-kefka/igt@debugfs_test@read_all_entries.html
    - fi-kbl-x1275:       [PASS][50] -> [DMESG-WARN][51]
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-x1275/igt@debugfs_test@read_all_entries.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-x1275/igt@debugfs_test@read_all_entries.html
    - fi-blb-e6850:       [PASS][52] -> [DMESG-WARN][53]
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-blb-e6850/igt@debugfs_test@read_all_entries.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-blb-e6850/igt@debugfs_test@read_all_entries.html
    - fi-bwr-2160:        [PASS][54] -> [DMESG-WARN][55]
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bwr-2160/igt@debugfs_test@read_all_entries.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bwr-2160/igt@debugfs_test@read_all_entries.html
    - fi-bdw-5557u:       [PASS][56] -> [DMESG-WARN][57]
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bdw-5557u/igt@debugfs_test@read_all_entries.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bdw-5557u/igt@debugfs_test@read_all_entries.html
    - fi-kbl-r:           [PASS][58] -> [DMESG-WARN][59]
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-r/igt@debugfs_test@read_all_entries.html
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-r/igt@debugfs_test@read_all_entries.html
    - fi-skl-guc:         [PASS][60] -> [DMESG-WARN][61]
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-guc/igt@debugfs_test@read_all_entries.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-guc/igt@debugfs_test@read_all_entries.html
    - fi-kbl-7567u:       [PASS][62] -> [DMESG-WARN][63]
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-7567u/igt@debugfs_test@read_all_entries.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-7567u/igt@debugfs_test@read_all_entries.html
    - fi-apl-guc:         [PASS][64] -> [DMESG-WARN][65]
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-apl-guc/igt@debugfs_test@read_all_entries.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-apl-guc/igt@debugfs_test@read_all_entries.html
    - fi-kbl-8809g:       [PASS][66] -> [DMESG-WARN][67]
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-8809g/igt@debugfs_test@read_all_entries.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-8809g/igt@debugfs_test@read_all_entries.html
    - fi-skl-6600u:       [PASS][68] -> [DMESG-WARN][69]
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-6600u/igt@debugfs_test@read_all_entries.html
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-6600u/igt@debugfs_test@read_all_entries.html
    - fi-byt-j1900:       [PASS][70] -> [DMESG-WARN][71]
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-byt-j1900/igt@debugfs_test@read_all_entries.html
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-byt-j1900/igt@debugfs_test@read_all_entries.html
    - fi-bxt-dsi:         [PASS][72] -> [DMESG-WARN][73]
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bxt-dsi/igt@debugfs_test@read_all_entries.html
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bxt-dsi/igt@debugfs_test@read_all_entries.html
    - fi-cfl-8700k:       [PASS][74] -> [DMESG-WARN][75]
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-cfl-8700k/igt@debugfs_test@read_all_entries.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-cfl-8700k/igt@debugfs_test@read_all_entries.html
    - fi-cml-u2:          [PASS][76] -> [DMESG-WARN][77]
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-cml-u2/igt@debugfs_test@read_all_entries.html
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-cml-u2/igt@debugfs_test@read_all_entries.html
    - fi-whl-u:           [PASS][78] -> [DMESG-WARN][79]
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-whl-u/igt@debugfs_test@read_all_entries.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-whl-u/igt@debugfs_test@read_all_entries.html
    - fi-bsw-n3050:       [PASS][80] -> [DMESG-WARN][81]
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-bsw-n3050/igt@debugfs_test@read_all_entries.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-bsw-n3050/igt@debugfs_test@read_all_entries.html
    - fi-skl-6700k2:      [PASS][82] -> [DMESG-WARN][83]
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-skl-6700k2/igt@debugfs_test@read_all_entries.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-skl-6700k2/igt@debugfs_test@read_all_entries.html
    - fi-hsw-4770:        [PASS][84] -> [DMESG-WARN][85]
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-hsw-4770/igt@debugfs_test@read_all_entries.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-hsw-4770/igt@debugfs_test@read_all_entries.html
    - fi-cfl-guc:         [PASS][86] -> [DMESG-WARN][87]
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-cfl-guc/igt@debugfs_test@read_all_entries.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-cfl-guc/igt@debugfs_test@read_all_entries.html
    - fi-icl-guc:         [PASS][88] -> [DMESG-WARN][89]
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-icl-guc/igt@debugfs_test@read_all_entries.html
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-icl-guc/igt@debugfs_test@read_all_entries.html

  
New tests
---------

  New tests have been introduced between CI_DRM_6376 and Patchwork_13460:

### New IGT tests (1) ###

  * igt@i915_selftest@live_memory_region:
    - Statuses :
    - Exec time: [None] s

  

Known issues
------------

  Here are the changes found in Patchwork_13460 that come from known issues:

### IGT changes ###

#### Warnings ####

  * igt@runner@aborted:
    - fi-kbl-r:           [FAIL][90] ([fdo#103841] / [fdo#110992]) -> [FAIL][91] ([fdo#110992])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6376/fi-kbl-r/igt@runner@aborted.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/fi-kbl-r/igt@runner@aborted.html

  
  [fdo#103841]: https://bugs.freedesktop.org/show_bug.cgi?id=103841
  [fdo#110992]: https://bugs.freedesktop.org/show_bug.cgi?id=110992


Participating hosts (53 -> 45)
------------------------------

  Additional (1): fi-snb-2600 
  Missing    (9): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-byt-clapper fi-icl-y fi-icl-dsi fi-bdw-samus 


Build changes
-------------

  * Linux: CI_DRM_6376 -> Patchwork_13460

  CI_DRM_6376: 092d19896d2abb3f132713e72608386f670ddbb0 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5071: 3c4edeba35ac699db5b39600eb17f4151c6b42fd @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13460: 2c530c39178dc8c6a2966fe82541debf5785546c @ git://anongit.freedesktop.org/gfx-ci/linux


== Kernel 32bit build ==

Warning: Kernel 32bit buildtest failed:
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13460/build_32bit.log

  CALL    scripts/checksyscalls.sh
  CALL    scripts/atomic/check-atomics.sh
  CHK     include/generated/compile.h
Kernel: arch/x86/boot/bzImage is ready  (#1)
  Building modules, stage 2.
  MODPOST 112 modules
ERROR: "__udivdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined!
ERROR: "__divdi3" [drivers/gpu/drm/amd/amdgpu/amdgpu.ko] undefined!
scripts/Makefile.modpost:91: recipe for target '__modpost' failed
make[1]: *** [__modpost] Error 1
Makefile:1287: recipe for target 'modules' failed
make: *** [modules] Error 2


== Linux commits ==

2c530c39178d HAX drm/i915/lmem: default userspace allocations to LMEM
f5de7bb8e2d3 HAX drm/i915: add the fake lmem region
45761cc62ad8 drm/i915/query: Expose memory regions through the query uAPI
d3e6c6c9f2a5 drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION
80c18bff8a6f drm/i915: support basic object migration
8c21fd6a50e8 drm/i915: cpu-map based dumb buffers
3a94fa78f237 drm/i915: Add cpu and lmem fault handlers
5cd5c23c7ae8 drm/i915/lmem: add helper to get CPU accessible offset
4981ff369abe drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET
c5129ddc06ad drm/i915: Allow i915 to manage the vma offset nodes instead of drm core
bf7a75b46b28 drm/i915: Don't try to place HWS in non-existing mappable region
6cef423853ea drm/i915: error capture with no ggtt slot
c3ebef177d7d drm/i915/selftests: check for missing aperture
5681ea496f31 drm/i915: set num_fence_regs to 0 if there is no aperture
3fb004e577d6 drm/i915: expose missing map_gtt support to users
50a3eeb8189f drm/i915: do not map aperture if it is not available.
089ac99864c6 drm/i915: define HAS_MAPPABLE_APERTURE
3fff0096edab drm/i915: treat stolen as a region
eb9166edbaaa drm/i915: treat shmem as a region
c0332db20e13 drm/i915: enumerate and init each supported region
282c4317ef1a drm/i915/lmem: support pwrite
1c5dce2c18de drm/i915/lmem: support pread
6bef737f4655 drm/i915/lmem: support CPU relocations
7e21a904a5ac drm/i915/selftest: extend coverage to include LMEM huge-pages
88e9fcca4054 drm/i915/selftests: don't just test CACHE_NONE for huge-pages
cc31698abc26 drm/i915/selftests: add write-dword test for LMEM
4de58ea97434 drm/i915/selftests: move gpu-write-dw into utils
cac31ed0edda drm/i915/blt: support copying objects
8784beb8d0cd drm/i915/lmem: support kernel mapping
894c2da949ad drm/i915: setup io-mapping for LMEM
07335c6c968c drm/i915: support creating LMEM objects
158dcac99d23 drm/i915: Add memory region information to device_info
896ab6f953bb drm/i915/region: support volatile objects
97c56199279a drm/i915/region: support continuous allocations
b199239505e9 drm/i915/region: support basic eviction
9dd43433710a drm/i915: introduce intel_memory_region
6f6eb8a214a1 drm/i915: buddy allocator
$ dim checkpatch origin/drm-tip
6f6eb8a214a1 drm/i915: buddy allocator
-:29: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#29: 
new file mode 100644

-:278: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#278: FILE: drivers/gpu/drm/i915/i915_buddy.c:245:
+void i915_buddy_free_list(struct i915_buddy_mm *mm,
+			      struct list_head *objects)

-:436: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#436: FILE: drivers/gpu/drm/i915/i915_buddy.c:403:
+	if (buddy && (i915_buddy_block_free(block) &&
+	    i915_buddy_block_free(buddy)))

-:468: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#468: FILE: drivers/gpu/drm/i915/i915_buddy.h:16:
+#define   I915_BUDDY_ALLOCATED (1<<10)
                                  ^

-:469: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#469: FILE: drivers/gpu/drm/i915/i915_buddy.h:17:
+#define   I915_BUDDY_FREE	   (2<<10)
                          	     ^

-:470: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#470: FILE: drivers/gpu/drm/i915/i915_buddy.h:18:
+#define   I915_BUDDY_SPLIT	   (3<<10)
                           	     ^

total: 0 errors, 1 warnings, 5 checks, 1030 lines checked
9dd43433710a drm/i915: introduce intel_memory_region
-:65: CHECK:LINE_SPACING: Please don't use multiple blank lines
#65: FILE: drivers/gpu/drm/i915/gem/selftests/huge_pages.c:451:
 
+

-:95: ERROR:CODE_INDENT: code indent should use tabs where possible
#95: FILE: drivers/gpu/drm/i915/gem/selftests/huge_pages.c:481:
+^I^I        &obj->memory_region->region.start);$

-:179: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#179: 
new file mode 100644

-:196: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#196: FILE: drivers/gpu/drm/i915/intel_memory_region.c:13:
+{
+

-:278: WARNING:BLOCK_COMMENT_STYLE: Block comments should align the * on each line
#278: FILE: drivers/gpu/drm/i915/intel_memory_region.c:95:
+		 * coalesce if we can.
+		*/

-:437: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#437: FILE: drivers/gpu/drm/i915/intel_memory_region.h:33:
+	INTEL_MEMORY_UKNOWN, /* Should be last */

-:446: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'r' may be better as '(r)' to avoid precedence issues
#446: FILE: drivers/gpu/drm/i915/intel_memory_region.h:42:
+#define MEMORY_TYPE_FROM_REGION(r) (ilog2(r >> INTEL_MEMORY_TYPE_SHIFT))

-:447: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'r' may be better as '(r)' to avoid precedence issues
#447: FILE: drivers/gpu/drm/i915/intel_memory_region.h:43:
+#define MEMORY_INSTANCE_FROM_REGION(r) (ilog2(r & 0xffff))

-:461: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#461: FILE: drivers/gpu/drm/i915/intel_memory_region.h:57:
+	int (*init)(struct intel_memory_region *);

-:462: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#462: FILE: drivers/gpu/drm/i915/intel_memory_region.h:58:
+	void (*release)(struct intel_memory_region *);

-:464: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct intel_memory_region *' should also have an identifier name
#464: FILE: drivers/gpu/drm/i915/intel_memory_region.h:60:
+	struct drm_i915_gem_object *

-:464: WARNING:FUNCTION_ARGUMENTS: function definition argument 'resource_size_t' should also have an identifier name
#464: FILE: drivers/gpu/drm/i915/intel_memory_region.h:60:
+	struct drm_i915_gem_object *

-:464: WARNING:FUNCTION_ARGUMENTS: function definition argument 'unsigned int' should also have an identifier name
#464: FILE: drivers/gpu/drm/i915/intel_memory_region.h:60:
+	struct drm_i915_gem_object *

-:479: CHECK:UNCOMMENTED_DEFINITION: struct mutex definition without comment
#479: FILE: drivers/gpu/drm/i915/intel_memory_region.h:75:
+	struct mutex mm_lock;

-:593: WARNING:EMBEDDED_FUNCTION_NAME: Prefer using '"%s...", __func__' to using 'igt_mock_fill', this function's name, in a string
#593: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:67:
+			pr_err("igt_mock_fill failed, space still left in region\n");

total: 1 errors, 9 warnings, 5 checks, 649 lines checked
b199239505e9 drm/i915/region: support basic eviction
97c56199279a drm/i915/region: support continuous allocations
-:22: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#22: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_types.h:137:
+#define I915_BO_ALLOC_CONTIGUOUS (1<<0)
                                    ^

total: 0 errors, 0 warnings, 1 checks, 238 lines checked
896ab6f953bb drm/i915/region: support volatile objects
-:23: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#23: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_types.h:138:
+#define I915_BO_ALLOC_VOLATILE   (1<<1)
                                    ^

total: 0 errors, 0 warnings, 1 checks, 108 lines checked
158dcac99d23 drm/i915: Add memory region information to device_info
07335c6c968c drm/i915: support creating LMEM objects
-:57: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#57: 
new file mode 100644

total: 0 errors, 1 warnings, 0 checks, 171 lines checked
894c2da949ad drm/i915: setup io-mapping for LMEM
-:7: WARNING:COMMIT_MESSAGE: Missing commit description - Add an appropriate one

total: 0 errors, 1 warnings, 0 checks, 35 lines checked
8784beb8d0cd drm/i915/lmem: support kernel mapping
-:113: CHECK:LINE_SPACING: Please don't use multiple blank lines
#113: FILE: drivers/gpu/drm/i915/intel_region_lmem.h:9:
 
+

-:186: ERROR:CODE_INDENT: code indent should use tabs where possible
#186: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:415:
+^I^I^I        val);$

-:186: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#186: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:415:
+			pr_err("vaddr[%u]=%u, val=%u\n", dword, vaddr[dword],
+			        val);

-:198: ERROR:CODE_INDENT: code indent should use tabs where possible
#198: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:427:
+^I^I^I        val ^ 0xdeadbeaf);$

-:198: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#198: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:427:
+			pr_err("vaddr[%u]=%u, val=%u\n", dword, vaddr[dword],
+			        val ^ 0xdeadbeaf);

total: 2 errors, 0 warnings, 3 checks, 187 lines checked
cac31ed0edda drm/i915/blt: support copying objects
-:14: ERROR:BAD_SIGN_OFF: Unrecognized email address: 'Abdiel Janulgue <abdiel.janulgue@linux.intel.com'
#14: 
Cc: Abdiel Janulgue <abdiel.janulgue@linux.intel.com

-:38: CHECK:SPACING: spaces preferred around that '-' (ctx:VxV)
#38: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_blt.c:119:
+		*cs++ = GEN9_XY_FAST_COPY_BLT_CMD | (10-2);
 		                                       ^

-:49: CHECK:SPACING: spaces preferred around that '-' (ctx:VxV)
#49: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_blt.c:130:
+		*cs++ = XY_SRC_COPY_BLT_CMD | BLT_WRITE_RGBA | (10-2);
 		                                                  ^

-:60: CHECK:SPACING: spaces preferred around that '-' (ctx:VxV)
#60: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_blt.c:141:
+		*cs++ = XY_SRC_COPY_BLT_CMD | BLT_WRITE_RGBA | (8-2);
 		                                                 ^

-:193: WARNING:LINE_SPACING: Missing a blank line after declarations
#193: FILE: drivers/gpu/drm/i915/gem/selftests/i915_gem_object_blt.c:103:
+	struct rnd_state prng;
+	IGT_TIMEOUT(end);

-:308: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#308: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:185:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22))
                                  	   ^

-:308: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#308: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:185:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22))
                                  	        ^

-:308: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#308: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:185:
+#define GEN9_XY_FAST_COPY_BLT_CMD	((2<<29)|(0x42<<22))
                                  	              ^

-:309: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#309: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:186:
+#define XY_SRC_COPY_BLT_CMD		((2<<29)|(0x53<<22))
                            		   ^

-:309: CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#309: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:186:
+#define XY_SRC_COPY_BLT_CMD		((2<<29)|(0x53<<22))
                            		        ^

-:309: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
#309: FILE: drivers/gpu/drm/i915/gt/intel_gpu_commands.h:186:
+#define XY_SRC_COPY_BLT_CMD		((2<<29)|(0x53<<22))
                            		              ^

total: 1 errors, 1 warnings, 9 checks, 277 lines checked
4de58ea97434 drm/i915/selftests: move gpu-write-dw into utils
cc31698abc26 drm/i915/selftests: add write-dword test for LMEM
-:87: WARNING:LINE_SPACING: Missing a blank line after declarations
#87: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:411:
+	struct intel_engine_cs *engine;
+	IGT_TIMEOUT(end_time);

-:160: WARNING:LINE_SPACING: Missing a blank line after declarations
#160: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:498:
+	struct drm_i915_gem_object *obj;
+	I915_RND_STATE(prng);

total: 0 errors, 2 warnings, 0 checks, 185 lines checked
88e9fcca4054 drm/i915/selftests: don't just test CACHE_NONE for huge-pages
7e21a904a5ac drm/i915/selftest: extend coverage to include LMEM huge-pages
-:7: WARNING:COMMIT_MESSAGE: Missing commit description - Add an appropriate one

total: 0 errors, 1 warnings, 0 checks, 146 lines checked
6bef737f4655 drm/i915/lmem: support CPU relocations
-:85: CHECK:SPACING: No space is necessary after a cast
#85: FILE: drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1091:
+		io_mapping_unmap_atomic((void __force __iomem *) unmask_page(cache->vaddr));

total: 0 errors, 0 warnings, 1 checks, 100 lines checked
1c5dce2c18de drm/i915/lmem: support pread
-:20: WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct drm_i915_gem_object *' should also have an identifier name
#20: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_types.h:55:
+	int (*pread)(struct drm_i915_gem_object *,

total: 0 errors, 1 warnings, 0 checks, 106 lines checked
282c4317ef1a drm/i915/lmem: support pwrite
-:71: ERROR:POINTER_LOCATION: "(foo*)" should be "(foo *)"
#71: FILE: drivers/gpu/drm/i915/intel_region_lmem.c:135:
+		unwritten = copy_from_user((void __force*)vaddr + offset,

total: 1 errors, 0 warnings, 0 checks, 87 lines checked
c0332db20e13 drm/i915: enumerate and init each supported region
eb9166edbaaa drm/i915: treat shmem as a region
-:7: WARNING:COMMIT_MESSAGE: Missing commit description - Add an appropriate one

-:49: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#49: FILE: drivers/gpu/drm/i915/gem/i915_gem_shmem.c:434:
+static int __create_shmem(struct drm_i915_private *i915,
 			struct drm_gem_object *obj,

-:61: WARNING:UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned'
#61: FILE: drivers/gpu/drm/i915/gem/i915_gem_shmem.c:457:
+	     unsigned flags)

-:123: WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 17)
#123: FILE: drivers/gpu/drm/i915/gem/i915_gem_shmem.c:579:
+	if (err)
+		 DRM_NOTE("Unable to create a private tmpfs mount, hugepage support will be disabled(%d).\n", err);

-:124: WARNING:LONG_LINE: line over 100 characters
#124: FILE: drivers/gpu/drm/i915/gem/i915_gem_shmem.c:580:
+		 DRM_NOTE("Unable to create a private tmpfs mount, hugepage support will be disabled(%d).\n", err);

total: 0 errors, 4 warnings, 1 checks, 254 lines checked
3fff0096edab drm/i915: treat stolen as a region
089ac99864c6 drm/i915: define HAS_MAPPABLE_APERTURE
-:20: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'dev_priv' may be better as '(dev_priv)' to avoid precedence issues
#20: FILE: drivers/gpu/drm/i915/i915_drv.h:2247:
+#define HAS_MAPPABLE_APERTURE(dev_priv) (dev_priv->ggtt.mappable_end > 0)

total: 0 errors, 0 warnings, 1 checks, 8 lines checked
50a3eeb8189f drm/i915: do not map aperture if it is not available.
-:40: CHECK:SPACING: No space is necessary after a cast
#40: FILE: drivers/gpu/drm/i915/i915_gem_gtt.c:3394:
+			(struct resource) DEFINE_RES_MEM(pci_resource_start(pdev, 2),

total: 0 errors, 0 warnings, 1 checks, 55 lines checked
3fb004e577d6 drm/i915: expose missing map_gtt support to users
5681ea496f31 drm/i915: set num_fence_regs to 0 if there is no aperture
c3ebef177d7d drm/i915/selftests: check for missing aperture
6cef423853ea drm/i915: error capture with no ggtt slot
-:162: WARNING:LINE_SPACING: Missing a blank line after declarations
#162: FILE: drivers/gpu/drm/i915/i915_gpu_error.c:1782:
+		const u64 slot = ggtt->error_capture.start;
+		ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE);

total: 0 errors, 1 warnings, 0 checks, 139 lines checked
bf7a75b46b28 drm/i915: Don't try to place HWS in non-existing mappable region
c5129ddc06ad drm/i915: Allow i915 to manage the vma offset nodes instead of drm core
-:218: ERROR:CODE_INDENT: code indent should use tabs where possible
#218: FILE: drivers/gpu/drm/i915/gem/i915_gem_mman.c:605:
+^I        mmo = container_of(node, struct i915_mmap_offset,$

-:349: ERROR:CODE_INDENT: code indent should use tabs where possible
#349: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.h:131:
+^I        mmo->vma_node.readonly = true;$

-:391: ERROR:POINTER_LOCATION: "foo* bar" should be "foo *bar"
#391: FILE: drivers/gpu/drm/i915/gem/i915_gem_object_types.h:70:
+	struct drm_i915_gem_object* obj;

total: 3 errors, 0 warnings, 0 checks, 501 lines checked
4981ff369abe drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET
-:120: WARNING:SPACE_BEFORE_TAB: please, no space before tabs
#120: FILE: include/uapi/drm/i915_drm.h:362:
+#define DRM_I915_GEM_MMAP_OFFSET   ^IDRM_I915_GEM_MMAP_GTT$

-:128: WARNING:LONG_LINE: line over 100 characters
#128: FILE: include/uapi/drm/i915_drm.h:425:
+#define DRM_IOCTL_I915_GEM_MMAP_OFFSET		DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_MMAP_OFFSET, struct drm_i915_gem_mmap_offset)

total: 0 errors, 2 warnings, 0 checks, 129 lines checked
5cd5c23c7ae8 drm/i915/lmem: add helper to get CPU accessible offset
3a94fa78f237 drm/i915: Add cpu and lmem fault handlers
-:53: WARNING:LINE_SPACING: Missing a blank line after declarations
#53: FILE: drivers/gpu/drm/i915/gem/i915_gem_mman.c:395:
+		struct page *page = i915_gem_object_get_page(obj, i);
+		vmf_ret = vmf_insert_pfn(area,

total: 0 errors, 1 warnings, 0 checks, 285 lines checked
8c21fd6a50e8 drm/i915: cpu-map based dumb buffers
-:25: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#25: FILE: drivers/gpu/drm/i915/gem/i915_gem_mman.c:604:
+i915_gem_mmap_dumb(struct drm_file *file,
+		  struct drm_device *dev,

-:90: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#90: FILE: drivers/gpu/drm/i915/i915_drv.h:2517:
+int i915_gem_mmap_dumb(struct drm_file *file_priv, struct drm_device *dev,
 		      u32 handle, u64 *offset);

total: 0 errors, 0 warnings, 2 checks, 56 lines checked
80c18bff8a6f drm/i915: support basic object migration
-:77: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#77: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:221:
+	GEM_BUG_ON(id >= INTEL_MEMORY_UKNOWN);

-:269: WARNING:LINE_SPACING: Missing a blank line after declarations
#269: FILE: drivers/gpu/drm/i915/selftests/intel_memory_region.c:662:
+	struct drm_i915_gem_object *obj;
+	IGT_TIMEOUT(end_time);

total: 0 errors, 2 warnings, 0 checks, 312 lines checked
d3e6c6c9f2a5 drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION
-:90: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#90: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:564:
+	return INTEL_MEMORY_UKNOWN;

-:100: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#100: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:574:
+	u32 uregions_copy[INTEL_MEMORY_UKNOWN];

-:122: ERROR:CODE_INDENT: code indent should use tabs where possible
#122: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:596:
+^I        goto err;$

-:132: WARNING:TYPO_SPELLING: 'UKNOWN' may be misspelled - perhaps 'UNKNOWN'?
#132: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:606:
+		if (id == INTEL_MEMORY_UKNOWN) {

-:168: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#168: FILE: drivers/gpu/drm/i915/gem/i915_gem_object.c:642:
+{
+

-:229: WARNING:LONG_LINE: line over 100 characters
#229: FILE: include/uapi/drm/i915_drm.h:427:
+#define DRM_IOCTL_I915_GEM_OBJECT_SETPARAM	DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_OBJECT_SETPARAM, struct drm_i915_gem_object_param)

total: 1 errors, 4 warnings, 1 checks, 221 lines checked
45761cc62ad8 drm/i915/query: Expose memory regions through the query uAPI
-:100: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#100: FILE: include/uapi/drm/i915_drm.h:2185:
+struct drm_i915_memory_region_info {
+

-:127: CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#127: FILE: include/uapi/drm/i915_drm.h:2212:
+struct drm_i915_query_memory_region_info {
+

total: 0 errors, 0 warnings, 2 checks, 118 lines checked
f5de7bb8e2d3 HAX drm/i915: add the fake lmem region
-:44: WARNING:LONG_LINE_COMMENT: line over 100 characters
#44: FILE: drivers/gpu/drm/i915/i915_drv.c:1904:
+		intel_graphics_fake_lmem_res.end = SZ_2G; /* Placeholder; depends on aperture size */

-:50: WARNING:LONG_LINE: line over 100 characters
#50: FILE: drivers/gpu/drm/i915/i915_drv.c:1910:
+		pr_info("Intel graphics fake LMEM starts at %pa\n", &intel_graphics_fake_lmem_res.start);

-:90: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#90: FILE: drivers/gpu/drm/i915/i915_params.c:168:
+i915_param_named_unsafe(fake_lmem_start, ulong, 0600,
+	"Fake LMEM start offset (default: 0)");

total: 0 errors, 2 warnings, 1 checks, 195 lines checked
2c530c39178d HAX drm/i915/lmem: default userspace allocations to LMEM
$ dim sparse origin/drm-tip
Sparse version: v0.5.2
Commit: drm/i915: buddy allocator
+drivers/gpu/drm/i915/selftests/i915_buddy.c:292:13: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/i915_buddy.c:292:13: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/i915_buddy.c:422:24: warning: expression using sizeof(void)
+drivers/gpu/drm/i915/selftests/i915_buddy.c:422:24: warning: expression using sizeof(void)
+./include/linux/slab.h:666:13: error: not a function <noident>
+./include/linux/slab.h:666:13: error: undefined identifier '__builtin_mul_overflow'
+./include/linux/slab.h:666:13: warning: call with no type!

Commit: drm/i915: introduce intel_memory_region
+./include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)

Commit: drm/i915/region: support basic eviction
Okay!

Commit: drm/i915/region: support continuous allocations
Okay!

Commit: drm/i915/region: support volatile objects
Okay!

Commit: drm/i915: Add memory region information to device_info
Okay!

Commit: drm/i915: support creating LMEM objects
+./include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)

Commit: drm/i915: setup io-mapping for LMEM
Okay!

Commit: drm/i915/lmem: support kernel mapping
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:180:42:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:180:42:    got void *[assigned] ptr
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:180:42: warning: incorrect type in argument 1 (different address spaces)
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:255:51:    expected void *
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:255:51:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:255:51: warning: incorrect type in return expression (different address spaces)
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:337:42:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:337:42:    got void *[assigned] ptr
+drivers/gpu/drm/i915/gem/i915_gem_pages.c:337:42: warning: incorrect type in argument 1 (different address spaces)

Commit: drm/i915/blt: support copying objects
Okay!

Commit: drm/i915/selftests: move gpu-write-dw into utils
Okay!

Commit: drm/i915/selftests: add write-dword test for LMEM
Okay!

Commit: drm/i915/selftests: don't just test CACHE_NONE for huge-pages
Okay!

Commit: drm/i915/selftest: extend coverage to include LMEM huge-pages
Okay!

Commit: drm/i915/lmem: support CPU relocations
+drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1107:15:    expected void *vaddr
+drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1107:15:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1107:15: warning: incorrect type in assignment (different address spaces)

Commit: drm/i915/lmem: support pread
Okay!

Commit: drm/i915/lmem: support pwrite
Okay!

Commit: drm/i915: enumerate and init each supported region
Okay!

Commit: drm/i915: treat shmem as a region
Okay!

Commit: drm/i915: treat stolen as a region
Okay!

Commit: drm/i915: define HAS_MAPPABLE_APERTURE
Okay!

Commit: drm/i915: do not map aperture if it is not available.
Okay!

Commit: drm/i915: expose missing map_gtt support to users
Okay!

Commit: drm/i915: set num_fence_regs to 0 if there is no aperture
Okay!

Commit: drm/i915/selftests: check for missing aperture
Okay!

Commit: drm/i915: error capture with no ggtt slot
+drivers/gpu/drm/i915/i915_gpu_error.c:1048:27:    expected void *s
+drivers/gpu/drm/i915/i915_gpu_error.c:1048:27:    got void [noderef] <asn:2>*
+drivers/gpu/drm/i915/i915_gpu_error.c:1048:27: warning: incorrect type in assignment (different address spaces)
+drivers/gpu/drm/i915/i915_gpu_error.c:1050:49:    expected void [noderef] <asn:2>*vaddr
+drivers/gpu/drm/i915/i915_gpu_error.c:1050:49:    got void *s
+drivers/gpu/drm/i915/i915_gpu_error.c:1050:49: warning: incorrect type in argument 1 (different address spaces)

Commit: drm/i915: Don't try to place HWS in non-existing mappable region
Okay!

Commit: drm/i915: Allow i915 to manage the vma offset nodes instead of drm core
+ ^
+                                                 ^~
+ }
-drivers/gpu/drm/i915/display/icl_dsi.c:135:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/icl_dsi.c:1425:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/icl_dsi.c:1425:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/icl_dsi.c:1426:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/icl_dsi.c:1426:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:306:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:306:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:482:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:601:15: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:971:34: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_audio.c:971:34: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:129:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:129:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:169:19: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:169:19: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:171:20: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:171:20: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:191:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:191:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:195:44: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:195:44: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_bw.c:244:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2251:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2254:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2263:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2271:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2280:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2312:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2312:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2348:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2348:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2541:17: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2541:17: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2575:17: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_cdclk.c:2575:17: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:121:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:227:29: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:237:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:240:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:243:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:245:38: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:248:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:251:33: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_color.c:341:37: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_ddi.c:671:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_ddi.c:673:24: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:1202:22: error: Expected constant expression in case statement
-drivers/gpu/drm/i915/display/intel_display.c:1205:22: error: Expected constant expression in case statement
-drivers/gpu/drm/i915/display/intel_display.c:1208:22: error: Expected constant expression in case statement
-drivers/gpu/drm/i915/display/intel_display.c:1211:22: error: Expected constant expression in case statement
-drivers/gpu/drm/i915/display/intel_display.c:14391:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:14391:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:2420:13: error: undefined identifier '__builtin_add_overflow_p'
-drivers/gpu/drm/i915/display/intel_display.c:2792:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:2792:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:7372:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:883:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_display.c:883:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c:158:21: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1442:39: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1806:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1806:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1939:23: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1959:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1959:25: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1981:58: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:1981:58: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:255:16: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:300:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:300:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:394:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:394:28: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:4371:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:4371:26: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:4414:27: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:4414:27: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:5941:30: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:6645:31: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:6674:9: warning: expression using sizeof(void)
-drivers/gpu/drm/i915/display/intel_dp.c:6674:9: warning: expression using sizeof(void)
-driv