* [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem @ 2020-01-03 12:15 Chris Wilson 2020-01-03 12:15 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions Chris Wilson ` (4 more replies) 0 siblings, 5 replies; 7+ messages in thread From: Chris Wilson @ 2020-01-03 12:15 UTC (permalink / raw) To: intel-gfx; +Cc: Matthew Auld From: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Local memory objects are similar to our usual scatterlist, but instead of using the struct page stored therein, we need to use the sg->dma_address. Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Matthew Auld <matthew.auld@intel.com> --- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 21 ++++++++++----- drivers/gpu/drm/i915/i915_drv.h | 6 ++--- drivers/gpu/drm/i915/i915_mm.c | 34 +++++++++++++++--------- 3 files changed, 39 insertions(+), 22 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c index ed0d9a2f0e7b..37efd95c086d 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c @@ -217,6 +217,7 @@ static vm_fault_t i915_error_to_vmf_fault(int err) case -ENOSPC: /* shmemfs allocation failure */ case -ENOMEM: /* our allocation failure */ + case -ENXIO: return VM_FAULT_OOM; case 0: @@ -237,11 +238,9 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf) struct vm_area_struct *area = vmf->vma; struct i915_mmap_offset *mmo = area->vm_private_data; struct drm_i915_gem_object *obj = mmo->obj; + resource_size_t iomap; int err; - if (unlikely(!i915_gem_object_has_struct_page(obj))) - return VM_FAULT_SIGBUS; - /* Sanity check that we allow writing into this object */ if (unlikely(i915_gem_object_is_readonly(obj) && area->vm_flags & VM_WRITE)) @@ -251,10 +250,16 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf) if (err) goto out; + iomap = -1; + if (!i915_gem_object_type_has(obj, I915_GEM_OBJECT_HAS_STRUCT_PAGE)) { + iomap = obj->mm.region->iomap.base; + iomap -= obj->mm.region->region.start; + } + /* PTEs are revoked in obj->ops->put_pages() */ - err = remap_io_sg_page(area, - area->vm_start, area->vm_end - area->vm_start, - obj->mm.pages->sgl); + err = remap_io_sg(area, + area->vm_start, area->vm_end - area->vm_start, + obj->mm.pages->sgl, iomap); if (area->vm_flags & VM_WRITE) { GEM_BUG_ON(!i915_gem_object_has_pinned_pages(obj)); @@ -553,7 +558,9 @@ __assign_mmap_offset(struct drm_file *file, } if (mmap_type != I915_MMAP_TYPE_GTT && - !i915_gem_object_has_struct_page(obj)) { + !i915_gem_object_type_has(obj, + I915_GEM_OBJECT_HAS_STRUCT_PAGE | + I915_GEM_OBJECT_HAS_IOMEM)) { err = -ENODEV; goto out; } diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 2ee9f57d165d..50181113dd2b 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -2027,9 +2027,9 @@ int i915_reg_read_ioctl(struct drm_device *dev, void *data, int remap_io_mapping(struct vm_area_struct *vma, unsigned long addr, unsigned long pfn, unsigned long size, struct io_mapping *iomap); -int remap_io_sg_page(struct vm_area_struct *vma, - unsigned long addr, unsigned long size, - struct scatterlist *sgl); +int remap_io_sg(struct vm_area_struct *vma, + unsigned long addr, unsigned long size, + struct scatterlist *sgl, resource_size_t iobase); static inline int intel_hws_csb_write_index(struct drm_i915_private *i915) { diff --git a/drivers/gpu/drm/i915/i915_mm.c b/drivers/gpu/drm/i915/i915_mm.c index 2998689e6d42..b6376b25ef63 100644 --- a/drivers/gpu/drm/i915/i915_mm.c +++ b/drivers/gpu/drm/i915/i915_mm.c @@ -35,6 +35,7 @@ struct remap_pfn { pgprot_t prot; struct sgt_iter sgt; + resource_size_t iobase; }; static int remap_pfn(pte_t *pte, unsigned long addr, void *data) @@ -48,12 +49,17 @@ static int remap_pfn(pte_t *pte, unsigned long addr, void *data) return 0; } -static inline unsigned long sgt_pfn(const struct sgt_iter *sgt) +#define use_dma(io) ((io) != -1) + +static inline unsigned long sgt_pfn(const struct remap_pfn *r) { - return sgt->pfn + (sgt->curr >> PAGE_SHIFT); + if (use_dma(r->iobase)) + return (r->sgt.dma + r->sgt.curr + r->iobase) >> PAGE_SHIFT; + else + return r->sgt.pfn + (r->sgt.curr >> PAGE_SHIFT); } -static int remap_sg_page(pte_t *pte, unsigned long addr, void *data) +static int remap_sg(pte_t *pte, unsigned long addr, void *data) { struct remap_pfn *r = data; @@ -62,12 +68,12 @@ static int remap_sg_page(pte_t *pte, unsigned long addr, void *data) /* Special PTE are not associated with any struct page */ set_pte_at(r->mm, addr, pte, - pte_mkspecial(pfn_pte(sgt_pfn(&r->sgt), r->prot))); + pte_mkspecial(pfn_pte(sgt_pfn(r), r->prot))); r->pfn++; /* track insertions in case we need to unwind later */ r->sgt.curr += PAGE_SIZE; if (r->sgt.curr >= r->sgt.max) - r->sgt = __sgt_iter(__sg_next(r->sgt.sgp), false); + r->sgt = __sgt_iter(__sg_next(r->sgt.sgp), use_dma(r->iobase)); return 0; } @@ -108,30 +114,34 @@ int remap_io_mapping(struct vm_area_struct *vma, } /** - * remap_io_sg_page - remap an IO mapping to userspace + * remap_io_sg - remap an IO mapping to userspace * @vma: user vma to map to * @addr: target user address to start at * @size: size of map area * @sgl: Start sg entry + * @iobase: Use stored dma address offset by this address or pfn if -1 * * Note: this is only safe if the mm semaphore is held when called. */ -int remap_io_sg_page(struct vm_area_struct *vma, - unsigned long addr, unsigned long size, - struct scatterlist *sgl) +int remap_io_sg(struct vm_area_struct *vma, + unsigned long addr, unsigned long size, + struct scatterlist *sgl, resource_size_t iobase) { struct remap_pfn r = { .mm = vma->vm_mm, .prot = vma->vm_page_prot, - .sgt = __sgt_iter(sgl, false), + .sgt = __sgt_iter(sgl, use_dma(iobase)), + .iobase = iobase, }; int err; /* We rely on prevalidation of the io-mapping to skip track_pfn(). */ GEM_BUG_ON((vma->vm_flags & EXPECTED_FLAGS) != EXPECTED_FLAGS); - flush_cache_range(vma, addr, size); - err = apply_to_page_range(r.mm, addr, size, remap_sg_page, &r); + if (!use_dma(iobase)) + flush_cache_range(vma, addr, size); + + err = apply_to_page_range(r.mm, addr, size, remap_sg, &r); if (unlikely(err)) { zap_vma_ptes(vma, addr, r.pfn << PAGE_SHIFT); return err; -- 2.25.0.rc0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson @ 2020-01-03 12:15 ` Chris Wilson 2020-01-03 18:10 ` Chris Wilson 2020-01-03 12:17 ` [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson ` (3 subsequent siblings) 4 siblings, 1 reply; 7+ messages in thread From: Chris Wilson @ 2020-01-03 12:15 UTC (permalink / raw) To: intel-gfx; +Cc: Matthew Auld From: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Instead of testing individually our new fault handlers, iterate over all memory regions and test all from one interface. Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> --- We also need an igt_mmap_gpu to truly test lmem. --- .../drm/i915/gem/selftests/i915_gem_mman.c | 306 +++++++++++++----- 1 file changed, 218 insertions(+), 88 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c index cbf796da64e3..2a31f51be8d6 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c @@ -9,6 +9,7 @@ #include "gt/intel_engine_pm.h" #include "gt/intel_gt.h" #include "gt/intel_gt_pm.h" +#include "gem/i915_gem_region.h" #include "huge_gem_object.h" #include "i915_selftest.h" #include "selftests/i915_random.h" @@ -725,114 +726,231 @@ static int igt_mmap_offset_exhaustion(void *arg) goto out; } -#define expand32(x) (((x) << 0) | ((x) << 8) | ((x) << 16) | ((x) << 24)) -static int igt_mmap(void *arg, enum i915_mmap_type type) +static int gtt_set(struct drm_i915_gem_object *obj) { - struct drm_i915_private *i915 = arg; - struct drm_i915_gem_object *obj; - struct i915_mmap_offset *mmo; - struct vm_area_struct *area; - unsigned long addr; - void *vaddr; - int err = 0, i; + struct i915_vma *vma; + void __iomem *map; + int err = 0; - if (!i915_ggtt_has_aperture(&i915->ggtt)) - return 0; + vma = i915_gem_object_ggtt_pin(obj, NULL, 0, 0, PIN_MAPPABLE); + if (IS_ERR(vma)) + return PTR_ERR(vma); - obj = i915_gem_object_create_internal(i915, PAGE_SIZE); - if (IS_ERR(obj)) - return PTR_ERR(obj); + intel_gt_pm_get(vma->vm->gt); + map = i915_vma_pin_iomap(vma); + i915_vma_unpin(vma); + if (IS_ERR(map)) { + err = PTR_ERR(map); + goto out; + } + + memset_io(map, POISON_INUSE, obj->base.size); + i915_vma_unpin_iomap(vma); + +out: + intel_gt_pm_put(vma->vm->gt); + return err; +} + +static int gtt_check(struct drm_i915_gem_object *obj) +{ + struct i915_vma *vma; + void __iomem *map; + int err = 0; + + vma = i915_gem_object_ggtt_pin(obj, NULL, 0, 0, PIN_MAPPABLE); + if (IS_ERR(vma)) + return PTR_ERR(vma); - vaddr = i915_gem_object_pin_map(obj, I915_MAP_WB); - if (IS_ERR(vaddr)) { - err = PTR_ERR(vaddr); + intel_gt_pm_get(vma->vm->gt); + map = i915_vma_pin_iomap(vma); + i915_vma_unpin(vma); + if (IS_ERR(map)) { + err = PTR_ERR(map); goto out; } - memset(vaddr, POISON_INUSE, PAGE_SIZE); + + if (memchr_inv((void __force *)map, POISON_FREE, obj->base.size)) { + pr_err("%s: Write via mmap did not land in backing store (GTT)\n", + obj->mm.region->name); + err = -EINVAL; + } + i915_vma_unpin_iomap(vma); + +out: + intel_gt_pm_put(vma->vm->gt); + return err; +} + +static int wc_set(struct drm_i915_gem_object *obj) +{ + void *vaddr; + + vaddr = i915_gem_object_pin_map(obj, I915_MAP_WC); + if (IS_ERR(vaddr)) + return PTR_ERR(vaddr); + + memset(vaddr, POISON_INUSE, obj->base.size); i915_gem_object_flush_map(obj); i915_gem_object_unpin_map(obj); - mmo = mmap_offset_attach(obj, type, NULL); - if (IS_ERR(mmo)) { - err = PTR_ERR(mmo); - goto out; + return 0; +} + +static int wc_check(struct drm_i915_gem_object *obj) +{ + void *vaddr; + int err = 0; + + vaddr = i915_gem_object_pin_map(obj, I915_MAP_WC); + if (IS_ERR(vaddr)) + return PTR_ERR(vaddr); + + if (memchr_inv(vaddr, POISON_FREE, obj->base.size)) { + pr_err("%s: Write via mmap did not land in backing store (WC)\n", + obj->mm.region->name); + err = -EINVAL; } + i915_gem_object_unpin_map(obj); + + return err; +} + +static bool can_mmap(struct drm_i915_gem_object *obj, enum i915_mmap_type type) +{ + if (type == I915_MMAP_TYPE_GTT && + !i915_ggtt_has_aperture(&to_i915(obj->base.dev)->ggtt)) + return false; + + if (type != I915_MMAP_TYPE_GTT && + !i915_gem_object_type_has(obj, + I915_GEM_OBJECT_HAS_STRUCT_PAGE | + I915_GEM_OBJECT_HAS_IOMEM)) + return false; + + return true; +} + +#define expand32(x) (((x) << 0) | ((x) << 8) | ((x) << 16) | ((x) << 24)) +static int __igt_mmap(struct drm_i915_private *i915, + struct drm_i915_gem_object *obj, + enum i915_mmap_type type) +{ + struct i915_mmap_offset *mmo; + struct vm_area_struct *area; + unsigned long addr; + int err, i; + + if (!can_mmap(obj, type)) + return 0; + + err = wc_set(obj); + if (err == -ENXIO) + err = gtt_set(obj); + if (err) + return err; + + mmo = mmap_offset_attach(obj, type, NULL); + if (IS_ERR(mmo)) + return PTR_ERR(mmo); addr = igt_mmap_node(i915, &mmo->vma_node, 0, PROT_WRITE, MAP_SHARED); - if (IS_ERR_VALUE(addr)) { - err = addr; - goto out; - } + if (IS_ERR_VALUE(addr)) + return addr; - pr_debug("igt_mmap() @ %lx\n", addr); + pr_debug("igt_mmap(%s, %d) @ %lx\n", obj->mm.region->name, type, addr); area = find_vma(current->mm, addr); if (!area) { - pr_err("Did not create a vm_area_struct for the mmap\n"); + pr_err("%s: Did not create a vm_area_struct for the mmap\n", + obj->mm.region->name); err = -EINVAL; goto out_unmap; } if (area->vm_private_data != mmo) { - pr_err("vm_area_struct did not point back to our mmap_offset object!\n"); + pr_err("%s: vm_area_struct did not point back to our mmap_offset object!\n", + obj->mm.region->name); err = -EINVAL; goto out_unmap; } - for (i = 0; i < PAGE_SIZE / sizeof(u32); i++) { + for (i = 0; i < obj->base.size / sizeof(u32); i++) { u32 __user *ux = u64_to_user_ptr((u64)(addr + i * sizeof(*ux))); u32 x; if (get_user(x, ux)) { - pr_err("Unable to read from mmap, offset:%zd\n", - i * sizeof(x)); + pr_err("%s: Unable to read from mmap, offset:%zd\n", + obj->mm.region->name, i * sizeof(x)); err = -EFAULT; - break; + goto out_unmap; } if (x != expand32(POISON_INUSE)) { - pr_err("Read incorrect value from mmap, offset:%zd, found:%x, expected:%x\n", + pr_err("%s: Read incorrect value from mmap, offset:%zd, found:%x, expected:%x\n", + obj->mm.region->name, i * sizeof(x), x, expand32(POISON_INUSE)); err = -EINVAL; - break; + goto out_unmap; } x = expand32(POISON_FREE); if (put_user(x, ux)) { - pr_err("Unable to write to mmap, offset:%zd\n", - i * sizeof(x)); + pr_err("%s: Unable to write to mmap, offset:%zd\n", + obj->mm.region->name, i * sizeof(x)); err = -EFAULT; - break; + goto out_unmap; } } -out_unmap: - vm_munmap(addr, PAGE_SIZE); + if (type == I915_MMAP_TYPE_GTT) + intel_gt_flush_ggtt_writes(&i915->gt); - vaddr = i915_gem_object_pin_map(obj, I915_MAP_FORCE_WC); - if (IS_ERR(vaddr)) { - err = PTR_ERR(vaddr); - goto out; - } - if (err == 0 && memchr_inv(vaddr, POISON_FREE, PAGE_SIZE)) { - pr_err("Write via mmap did not land in backing store\n"); - err = -EINVAL; - } - i915_gem_object_unpin_map(obj); + err = wc_check(obj); + if (err == -ENXIO) + err = gtt_check(obj); +out_unmap: + vm_munmap(addr, obj->base.size); -out: - i915_gem_object_put(obj); return err; } -static int igt_mmap_gtt(void *arg) +static int igt_mmap(void *arg) { - return igt_mmap(arg, I915_MMAP_TYPE_GTT); -} + struct drm_i915_private *i915 = arg; + struct intel_memory_region *mr; + enum intel_region_id id; -static int igt_mmap_cpu(void *arg) -{ - return igt_mmap(arg, I915_MMAP_TYPE_WC); + for_each_memory_region(mr, i915, id) { + unsigned long sizes[] = { + PAGE_SIZE, + mr->min_page_size, + SZ_4M, + }; + int i; + + for (i = 0; i < ARRAY_SIZE(sizes); i++) { + struct drm_i915_gem_object *obj; + int err; + + obj = i915_gem_object_create_region(mr, sizes[i], 0); + if (obj == ERR_PTR(-ENODEV)) + continue; + + if (IS_ERR(obj)) + return PTR_ERR(obj); + + err = __igt_mmap(i915, obj, I915_MMAP_TYPE_GTT); + if (err == 0) + err = __igt_mmap(i915, obj, I915_MMAP_TYPE_WC); + + i915_gem_object_put(obj); + if (err) + return err; + } + } + + return 0; } static int check_present_pte(pte_t *pte, unsigned long addr, void *data) @@ -887,32 +1005,24 @@ static int prefault_range(u64 start, u64 len) return __get_user(c, end - 1); } -static int igt_mmap_revoke(void *arg, enum i915_mmap_type type) +static int __igt_mmap_revoke(struct drm_i915_private *i915, + struct drm_i915_gem_object *obj, + enum i915_mmap_type type) { - struct drm_i915_private *i915 = arg; - struct drm_i915_gem_object *obj; struct i915_mmap_offset *mmo; unsigned long addr; int err; - if (!i915_ggtt_has_aperture(&i915->ggtt)) + if (!can_mmap(obj, type)) return 0; - obj = i915_gem_object_create_internal(i915, SZ_4M); - if (IS_ERR(obj)) - return PTR_ERR(obj); - mmo = mmap_offset_attach(obj, type, NULL); - if (IS_ERR(mmo)) { - err = PTR_ERR(mmo); - goto out; - } + if (IS_ERR(mmo)) + return PTR_ERR(mmo); addr = igt_mmap_node(i915, &mmo->vma_node, 0, PROT_WRITE, MAP_SHARED); - if (IS_ERR_VALUE(addr)) { - err = addr; - goto out; - } + if (IS_ERR_VALUE(addr)) + return addr; err = prefault_range(addr, obj->base.size); if (err) @@ -922,8 +1032,10 @@ static int igt_mmap_revoke(void *arg, enum i915_mmap_type type) !atomic_read(&obj->bind_count)); err = check_present(addr, obj->base.size); - if (err) + if (err) { + pr_err("%s: was not present\n", obj->mm.region->name); goto out_unmap; + } /* * After unbinding the object from the GGTT, its address may be reused @@ -947,24 +1059,44 @@ static int igt_mmap_revoke(void *arg, enum i915_mmap_type type) } err = check_absent(addr, obj->base.size); - if (err) + if (err) { + pr_err("%s: was not absent\n", obj->mm.region->name); goto out_unmap; + } out_unmap: vm_munmap(addr, obj->base.size); -out: - i915_gem_object_put(obj); + return err; } -static int igt_mmap_gtt_revoke(void *arg) +static int igt_mmap_revoke(void *arg) { - return igt_mmap_revoke(arg, I915_MMAP_TYPE_GTT); -} + struct drm_i915_private *i915 = arg; + struct intel_memory_region *mr; + enum intel_region_id id; -static int igt_mmap_cpu_revoke(void *arg) -{ - return igt_mmap_revoke(arg, I915_MMAP_TYPE_WC); + for_each_memory_region(mr, i915, id) { + struct drm_i915_gem_object *obj; + int err; + + obj = i915_gem_object_create_region(mr, PAGE_SIZE, 0); + if (obj == ERR_PTR(-ENODEV)) + continue; + + if (IS_ERR(obj)) + return PTR_ERR(obj); + + err = __igt_mmap_revoke(i915, obj, I915_MMAP_TYPE_GTT); + if (err == 0) + err = __igt_mmap_revoke(i915, obj, I915_MMAP_TYPE_WC); + + i915_gem_object_put(obj); + if (err) + return err; + } + + return 0; } int i915_gem_mman_live_selftests(struct drm_i915_private *i915) @@ -973,10 +1105,8 @@ int i915_gem_mman_live_selftests(struct drm_i915_private *i915) SUBTEST(igt_partial_tiling), SUBTEST(igt_smoke_tiling), SUBTEST(igt_mmap_offset_exhaustion), - SUBTEST(igt_mmap_gtt), - SUBTEST(igt_mmap_cpu), - SUBTEST(igt_mmap_gtt_revoke), - SUBTEST(igt_mmap_cpu_revoke), + SUBTEST(igt_mmap), + SUBTEST(igt_mmap_revoke), }; return i915_subtests(tests, i915); -- 2.25.0.rc0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions 2020-01-03 12:15 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions Chris Wilson @ 2020-01-03 18:10 ` Chris Wilson 0 siblings, 0 replies; 7+ messages in thread From: Chris Wilson @ 2020-01-03 18:10 UTC (permalink / raw) To: intel-gfx; +Cc: Matthew Auld Quoting Chris Wilson (2020-01-03 12:15:05) > From: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> > > Instead of testing individually our new fault handlers, iterate over all > memory regions and test all from one interface. > > Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> > Cc: Matthew Auld <matthew.auld@intel.com> > Cc: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > --- > We also need an igt_mmap_gpu to truly test lmem. But not strictly necessary since we compare using discontguous pin_map() which we have validated as being what the GPU sees. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson 2020-01-03 12:15 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions Chris Wilson @ 2020-01-03 12:17 ` Chris Wilson 2020-01-03 13:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] " Patchwork ` (2 subsequent siblings) 4 siblings, 0 replies; 7+ messages in thread From: Chris Wilson @ 2020-01-03 12:17 UTC (permalink / raw) To: intel-gfx; +Cc: Matthew Auld Quoting Chris Wilson (2020-01-03 12:15:04) > From: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> > > Local memory objects are similar to our usual scatterlist, but instead > of using the struct page stored therein, we need to use the > sg->dma_address. > > Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> > Cc: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Matthew Auld <matthew.auld@intel.com> > --- > drivers/gpu/drm/i915/gem/i915_gem_mman.c | 21 ++++++++++----- > drivers/gpu/drm/i915/i915_drv.h | 6 ++--- > drivers/gpu/drm/i915/i915_mm.c | 34 +++++++++++++++--------- > 3 files changed, 39 insertions(+), 22 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > index ed0d9a2f0e7b..37efd95c086d 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > @@ -217,6 +217,7 @@ static vm_fault_t i915_error_to_vmf_fault(int err) > > case -ENOSPC: /* shmemfs allocation failure */ > case -ENOMEM: /* our allocation failure */ > + case -ENXIO: Why not SIGBUS? -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/gem: Extend mmap support for lmem 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson 2020-01-03 12:15 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions Chris Wilson 2020-01-03 12:17 ` [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson @ 2020-01-03 13:31 ` Patchwork 2020-01-03 14:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2020-01-04 0:13 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2020-01-03 13:31 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: series starting with [1/2] drm/i915/gem: Extend mmap support for lmem URL : https://patchwork.freedesktop.org/series/71601/ State : warning == Summary == $ dim checkpatch origin/drm-tip b0a72df86a8d drm/i915/gem: Extend mmap support for lmem e550fd5b9f6c drm/i915/selftests: Extend fault handler selftests to all memory regions -:158: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'x' - possible side-effects? #158: FILE: drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c:834: +#define expand32(x) (((x) << 0) | ((x) << 8) | ((x) << 16) | ((x) << 24)) total: 0 errors, 0 warnings, 1 checks, 412 lines checked _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915/gem: Extend mmap support for lmem 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson ` (2 preceding siblings ...) 2020-01-03 13:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] " Patchwork @ 2020-01-03 14:00 ` Patchwork 2020-01-04 0:13 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2020-01-03 14:00 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: series starting with [1/2] drm/i915/gem: Extend mmap support for lmem URL : https://patchwork.freedesktop.org/series/71601/ State : success == Summary == CI Bug Log - changes from CI_DRM_7673 -> Patchwork_15986 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_15986: ### IGT changes ### #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@gem_exec_fence@basic-busy-default: - {fi-ehl-1}: NOTRUN -> [INCOMPLETE][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-ehl-1/igt@gem_exec_fence@basic-busy-default.html Known issues ------------ Here are the changes found in Patchwork_15986 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_close_race@basic-threads: - fi-byt-j1900: [PASS][2] -> [TIMEOUT][3] ([i915#816]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-byt-j1900/igt@gem_close_race@basic-threads.html [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-byt-j1900/igt@gem_close_race@basic-threads.html * igt@i915_selftest@live_gem_contexts: - fi-hsw-peppy: [PASS][4] -> [DMESG-FAIL][5] ([i915#722]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html #### Possible fixes #### * igt@gem_exec_store@basic-all: - fi-byt-n2820: [FAIL][6] ([i915#894]) -> [PASS][7] [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-byt-n2820/igt@gem_exec_store@basic-all.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-byt-n2820/igt@gem_exec_store@basic-all.html * igt@i915_module_load@reload-with-fault-injection: - fi-cfl-guc: [INCOMPLETE][8] ([i915#505] / [i915#671]) -> [PASS][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-cfl-guc/igt@i915_module_load@reload-with-fault-injection.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-cfl-guc/igt@i915_module_load@reload-with-fault-injection.html * igt@i915_pm_rpm@basic-pci-d3-state: - fi-hsw-4770: [SKIP][10] ([fdo#109271]) -> [PASS][11] +1 similar issue [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html * igt@i915_selftest@live_execlists: - fi-skl-6770hq: [DMESG-FAIL][12] ([i915#841]) -> [PASS][13] [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-skl-6770hq/igt@i915_selftest@live_execlists.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-skl-6770hq/igt@i915_selftest@live_execlists.html * igt@i915_selftest@live_gem_contexts: - fi-byt-n2820: [DMESG-FAIL][14] ([i915#722]) -> [PASS][15] [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-byt-n2820/igt@i915_selftest@live_gem_contexts.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-byt-n2820/igt@i915_selftest@live_gem_contexts.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [FAIL][16] ([fdo#111407]) -> [PASS][17] [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407 [i915#505]: https://gitlab.freedesktop.org/drm/intel/issues/505 [i915#671]: https://gitlab.freedesktop.org/drm/intel/issues/671 [i915#722]: https://gitlab.freedesktop.org/drm/intel/issues/722 [i915#816]: https://gitlab.freedesktop.org/drm/intel/issues/816 [i915#841]: https://gitlab.freedesktop.org/drm/intel/issues/841 [i915#894]: https://gitlab.freedesktop.org/drm/intel/issues/894 Participating hosts (45 -> 44) ------------------------------ Additional (8): fi-kbl-soraka fi-ehl-1 fi-bwr-2160 fi-snb-2520m fi-ilk-650 fi-elk-e7500 fi-skl-lmem fi-blb-e6850 Missing (9): fi-ilk-m540 fi-bdw-5557u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-ivb-3770 fi-bsw-kefka fi-byt-clapper fi-bdw-samus Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_7673 -> Patchwork_15986 CI-20190529: 20190529 CI_DRM_7673: 6e3335ed7b56aaf9d55ddf51cddea4d844dc3a78 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5357: a555a4b98f90dab655d24bb3d07e9291a8b8dac8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_15986: e550fd5b9f6cf15f7f0b869ba29ae4e61b2d7c54 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == e550fd5b9f6c drm/i915/selftests: Extend fault handler selftests to all memory regions b0a72df86a8d drm/i915/gem: Extend mmap support for lmem == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/index.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/2] drm/i915/gem: Extend mmap support for lmem 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson ` (3 preceding siblings ...) 2020-01-03 14:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork @ 2020-01-04 0:13 ` Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2020-01-04 0:13 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: series starting with [1/2] drm/i915/gem: Extend mmap support for lmem URL : https://patchwork.freedesktop.org/series/71601/ State : success == Summary == CI Bug Log - changes from CI_DRM_7673_full -> Patchwork_15986_full ==================================================== Summary ------- **SUCCESS** No regressions found. Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_15986_full: ### Piglit changes ### #### Possible regressions #### * spec@!opengl 1.5@vertex-buffer-offsets (NEW): - {pig-hsw-4770r}: NOTRUN -> [WARN][1] [1]: None New tests --------- New tests have been introduced between CI_DRM_7673_full and Patchwork_15986_full: ### New Piglit tests (37) ### * shaders@glsl-vs-vec4-indexing-temp-dst-in-loop: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@!opengl 1.1@depthstencil-default_fb-clear samples=4: - Statuses : 1 fail(s) - Exec time: [0.17] s * spec@!opengl 1.1@depthstencil-default_fb-readpixels-24_8: - Statuses : 1 fail(s) - Exec time: [0.10] s * spec@!opengl 1.1@depthstencil-default_fb-readpixels-32f_24_8_rev samples=4: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@!opengl 1.1@gl-1.1-xor-copypixels: - Statuses : 1 fail(s) - Exec time: [0.10] s * spec@!opengl 1.1@gl-1.2-texture-base-level: - Statuses : 1 fail(s) - Exec time: [0.10] s * spec@!opengl 1.1@texture-al: - Statuses : 1 fail(s) - Exec time: [0.09] s * spec@!opengl 1.5@vertex-buffer-offsets: - Statuses : 1 warn(s) - Exec time: [0.10] s * spec@amd_shader_trinary_minmax@execution@built-in-functions@fs-min3-int-int-int: - Statuses : 1 fail(s) - Exec time: [0.11] s * spec@arb_copy_image@arb_copy_image-targets gl_texture_1d 32 1 1 gl_texture_rectangle 32 32 1 11 0 0 5 13 0 14 1 1: - Statuses : 1 fail(s) - Exec time: [0.13] s * spec@arb_depth_buffer_float@fbo-depth-gl_depth_component32f-tex1d: - Statuses : 1 fail(s) - Exec time: [0.11] s * spec@arb_depth_buffer_float@fbo-stencil-gl_depth32f_stencil8-copypixels: - Statuses : 1 fail(s) - Exec time: [0.11] s * spec@arb_gpu_shader5@execution@sampler_array_indexing@gs-weird-uniforms: - Statuses : 1 fail(s) - Exec time: [0.09] s * spec@arb_gpu_shader5@execution@sampler_array_indexing@vs-struct-nonconst: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@arb_gpu_shader_fp64@execution@built-in-functions@fs-greaterthanequal-dvec4-dvec4: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@arb_gpu_shader_fp64@execution@glsl-uniform-initializer-3: - Statuses : 1 fail(s) - Exec time: [0.09] s * spec@arb_pixel_buffer_object@pbo-drawpixels: - Statuses : 1 fail(s) - Exec time: [0.08] s * spec@arb_shader_image_load_store@restrict: - Statuses : 1 fail(s) - Exec time: [0.10] s * spec@arb_vertex_attrib_64bit@execution@vs_in@vs-input-double_dmat4x3-position-float_mat2_array3: - Statuses : 1 fail(s) - Exec time: [5.81] s * spec@arb_vertex_attrib_64bit@execution@vs_in@vs-input-int_int-double_dmat3x2-position: - Statuses : 1 fail(s) - Exec time: [5.76] s * spec@arb_vertex_attrib_64bit@execution@vs_in@vs-input-int_ivec3-double_dvec4-position: - Statuses : 1 fail(s) - Exec time: [0.15] s * spec@arb_vertex_attrib_64bit@execution@vs_in@vs-input-position-double_dvec2-float_mat3: - Statuses : 1 fail(s) - Exec time: [5.64] s * spec@arb_vertex_attrib_64bit@execution@vs_in@vs-input-ushort_uvec4-double_dvec3-position: - Statuses : 1 fail(s) - Exec time: [5.52] s * spec@ext_texture_compression_s3tc@s3tc-targeted: - Statuses : 1 fail(s) - Exec time: [0.10] s * spec@glsl-1.10@execution@glsl-1.10-built-in-matrix-state: - Statuses : 1 fail(s) - Exec time: [0.33] s * spec@glsl-1.10@execution@glsl-render-after-bad-attach: - Statuses : 1 fail(s) - Exec time: [0.14] s * spec@glsl-1.10@execution@varying-packing@simple ivec4 arrays_of_arrays: - Statuses : 1 fail(s) - Exec time: [0.09] s * spec@glsl-1.30@execution@built-in-functions@fs-clamp-ivec2-int-int: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@glsl-1.30@execution@interpolation@interpolation-flat-gl_frontcolor-flat-fixed: - Statuses : 1 fail(s) - Exec time: [0.13] s * spec@glsl-4.00@execution@built-in-functions@fs-lessthan-dvec2-dvec2: - Statuses : 1 fail(s) - Exec time: [0.13] s * spec@glsl-4.00@execution@built-in-functions@gs-greaterthan-dvec3-dvec3: - Statuses : 1 fail(s) - Exec time: [0.11] s * spec@glsl-4.20@execution@vs_in@vs-input-double_dmat4x3-position-double_dvec2_array2: - Statuses : 1 fail(s) - Exec time: [6.64] s * spec@glsl-4.20@execution@vs_in@vs-input-float_mat3-double_dvec3-position: - Statuses : 1 fail(s) - Exec time: [6.61] s * spec@glsl-4.20@execution@vs_in@vs-input-int_ivec3-double_dmat3x4-position: - Statuses : 1 fail(s) - Exec time: [0.12] s * spec@glsl-4.20@execution@vs_in@vs-input-position-double_dmat2-uint_uvec2: - Statuses : 1 fail(s) - Exec time: [6.44] s * spec@glsl-4.20@execution@vs_in@vs-input-position-double_dvec3_array5-int_ivec2_array3: - Statuses : 1 fail(s) - Exec time: [6.62] s * spec@glsl-4.30@execution@built-in-functions@cs-op-gt-float-float: - Statuses : 1 fail(s) - Exec time: [0.12] s Known issues ------------ Here are the changes found in Patchwork_15986_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_persistence@bcs0-mixed-process: - shard-skl: [PASS][2] -> [FAIL][3] ([i915#679]) +1 similar issue [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl1/igt@gem_ctx_persistence@bcs0-mixed-process.html [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl5/igt@gem_ctx_persistence@bcs0-mixed-process.html * igt@gem_ctx_persistence@vcs1-cleanup: - shard-iclb: [PASS][4] -> [SKIP][5] ([fdo#109276] / [fdo#112080]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb4/igt@gem_ctx_persistence@vcs1-cleanup.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb3/igt@gem_ctx_persistence@vcs1-cleanup.html * igt@gem_eio@in-flight-contexts-1us: - shard-snb: [PASS][6] -> [FAIL][7] ([i915#490]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-snb5/igt@gem_eio@in-flight-contexts-1us.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-snb5/igt@gem_eio@in-flight-contexts-1us.html * igt@gem_exec_async@concurrent-writes-bsd: - shard-iclb: [PASS][8] -> [SKIP][9] ([fdo#112146]) +7 similar issues [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb7/igt@gem_exec_async@concurrent-writes-bsd.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb1/igt@gem_exec_async@concurrent-writes-bsd.html * igt@gem_exec_basic@basic-vcs1: - shard-iclb: [PASS][10] -> [SKIP][11] ([fdo#112080]) +7 similar issues [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb4/igt@gem_exec_basic@basic-vcs1.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb3/igt@gem_exec_basic@basic-vcs1.html * igt@gem_exec_nop@basic-series: - shard-tglb: [PASS][12] -> [INCOMPLETE][13] ([i915#435]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb7/igt@gem_exec_nop@basic-series.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb5/igt@gem_exec_nop@basic-series.html * igt@gem_sync@basic-each: - shard-tglb: [PASS][14] -> [INCOMPLETE][15] ([i915#472] / [i915#707]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb7/igt@gem_sync@basic-each.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb8/igt@gem_sync@basic-each.html * igt@i915_pm_dc@dc6-psr: - shard-iclb: [PASS][16] -> [FAIL][17] ([i915#454]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb3/igt@i915_pm_dc@dc6-psr.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb8/igt@i915_pm_dc@dc6-psr.html * igt@kms_color@pipe-a-ctm-0-25: - shard-skl: [PASS][18] -> [DMESG-WARN][19] ([i915#109]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl9/igt@kms_color@pipe-a-ctm-0-25.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl1/igt@kms_color@pipe-a-ctm-0-25.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-kbl: [PASS][20] -> [DMESG-WARN][21] ([i915#180]) +2 similar issues [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html * igt@kms_fbcon_fbt@psr-suspend: - shard-skl: [PASS][22] -> [INCOMPLETE][23] ([i915#69]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl5/igt@kms_fbcon_fbt@psr-suspend.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl5/igt@kms_fbcon_fbt@psr-suspend.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-skl: [PASS][24] -> [FAIL][25] ([i915#46]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw: - shard-tglb: [PASS][26] -> [FAIL][27] ([i915#49]) +1 similar issue [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb5/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb6/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min: - shard-skl: [PASS][28] -> [FAIL][29] ([fdo#108145]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-apl: [PASS][30] -> [DMESG-WARN][31] ([i915#180]) +3 similar issues [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-apl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-apl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html * igt@perf_pmu@enable-race-vcs1: - shard-tglb: [PASS][32] -> [INCOMPLETE][33] ([i915#435] / [i915#923]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb2/igt@perf_pmu@enable-race-vcs1.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb9/igt@perf_pmu@enable-race-vcs1.html * igt@prime_busy@hang-bsd2: - shard-iclb: [PASS][34] -> [SKIP][35] ([fdo#109276]) +22 similar issues [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb2/igt@prime_busy@hang-bsd2.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb7/igt@prime_busy@hang-bsd2.html #### Possible fixes #### * igt@gem_ctx_isolation@rcs0-s3: - shard-iclb: [DMESG-WARN][36] ([fdo#111764]) -> [PASS][37] [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb1/igt@gem_ctx_isolation@rcs0-s3.html [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb6/igt@gem_ctx_isolation@rcs0-s3.html * igt@gem_ctx_isolation@vcs1-none: - shard-iclb: [SKIP][38] ([fdo#109276] / [fdo#112080]) -> [PASS][39] +3 similar issues [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb5/igt@gem_ctx_isolation@vcs1-none.html [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb4/igt@gem_ctx_isolation@vcs1-none.html * igt@gem_ctx_shared@q-smoketest-bsd1: - shard-tglb: [INCOMPLETE][40] ([fdo#111735]) -> [PASS][41] [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb9/igt@gem_ctx_shared@q-smoketest-bsd1.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb5/igt@gem_ctx_shared@q-smoketest-bsd1.html * igt@gem_eio@kms: - shard-snb: [INCOMPLETE][42] ([i915#82]) -> [PASS][43] [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-snb7/igt@gem_eio@kms.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-snb6/igt@gem_eio@kms.html * igt@gem_exec_balancer@smoke: - shard-tglb: [INCOMPLETE][44] ([fdo#111593]) -> [PASS][45] [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb1/igt@gem_exec_balancer@smoke.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb6/igt@gem_exec_balancer@smoke.html * igt@gem_exec_parallel@fds: - shard-tglb: [INCOMPLETE][46] ([i915#470]) -> [PASS][47] [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb8/igt@gem_exec_parallel@fds.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb7/igt@gem_exec_parallel@fds.html * igt@gem_exec_schedule@preempt-queue-contexts-bsd1: - shard-tglb: [INCOMPLETE][48] ([fdo#111606] / [fdo#111677]) -> [PASS][49] [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb5/igt@gem_exec_schedule@preempt-queue-contexts-bsd1.html [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb7/igt@gem_exec_schedule@preempt-queue-contexts-bsd1.html * igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd: - shard-iclb: [SKIP][50] ([fdo#112146]) -> [PASS][51] [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb4/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb3/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html * igt@gem_linear_blits@interruptible: - shard-glk: [DMESG-WARN][52] ([i915#667]) -> [PASS][53] [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-glk7/igt@gem_linear_blits@interruptible.html [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-glk1/igt@gem_linear_blits@interruptible.html * igt@gem_persistent_relocs@forked-faulting-reloc-thrashing: - shard-iclb: [TIMEOUT][54] ([i915#530]) -> [PASS][55] [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb5/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb1/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html * igt@gem_sync@basic-store-each: - shard-tglb: [INCOMPLETE][56] ([i915#435] / [i915#472]) -> [PASS][57] [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb3/igt@gem_sync@basic-store-each.html [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb1/igt@gem_sync@basic-store-each.html * {igt@gen9_exec_parse@allowed-single}: - shard-skl: [DMESG-WARN][58] ([i915#716]) -> [PASS][59] [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl6/igt@gen9_exec_parse@allowed-single.html [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl9/igt@gen9_exec_parse@allowed-single.html * igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding: - shard-apl: [FAIL][60] ([i915#54]) -> [PASS][61] [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-apl6/igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding.html [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-apl3/igt@kms_cursor_crc@pipe-b-cursor-256x256-sliding.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions: - shard-skl: [FAIL][62] ([IGT#5]) -> [PASS][63] [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl9/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html * igt@kms_draw_crc@draw-method-xrgb2101010-render-ytiled: - shard-skl: [FAIL][64] ([i915#52] / [i915#54]) -> [PASS][65] +1 similar issue [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl3/igt@kms_draw_crc@draw-method-xrgb2101010-render-ytiled.html [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl8/igt@kms_draw_crc@draw-method-xrgb2101010-render-ytiled.html * igt@kms_flip@flip-vs-suspend: - shard-skl: [INCOMPLETE][66] ([i915#221]) -> [PASS][67] [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl1/igt@kms_flip@flip-vs-suspend.html [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl7/igt@kms_flip@flip-vs-suspend.html * igt@kms_flip@flip-vs-suspend-interruptible: - shard-kbl: [DMESG-WARN][68] ([i915#180]) -> [PASS][69] +4 similar issues [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-kbl4/igt@kms_flip@flip-vs-suspend-interruptible.html [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc: - shard-skl: [FAIL][70] ([i915#49]) -> [PASS][71] [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc.html [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-apl: [DMESG-WARN][72] ([i915#180]) -> [PASS][73] [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-apl2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-apl2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_plane@plane-position-covered-pipe-a-planes: - shard-skl: [FAIL][74] ([i915#247]) -> [PASS][75] [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl3/igt@kms_plane@plane-position-covered-pipe-a-planes.html [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl8/igt@kms_plane@plane-position-covered-pipe-a-planes.html * igt@kms_plane_alpha_blend@pipe-a-coverage-7efc: - shard-skl: [FAIL][76] ([fdo#108145]) -> [PASS][77] [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl8/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [FAIL][78] ([fdo#108145] / [i915#265]) -> [PASS][79] +1 similar issue [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html * igt@kms_psr@psr2_primary_blt: - shard-iclb: [SKIP][80] ([fdo#109441]) -> [PASS][81] [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb7/igt@kms_psr@psr2_primary_blt.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb2/igt@kms_psr@psr2_primary_blt.html * igt@kms_psr@psr2_suspend: - shard-tglb: [DMESG-WARN][82] ([i915#402]) -> [PASS][83] [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb1/igt@kms_psr@psr2_suspend.html [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb9/igt@kms_psr@psr2_suspend.html * igt@kms_setmode@basic: - shard-skl: [FAIL][84] ([i915#31]) -> [PASS][85] [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-skl9/igt@kms_setmode@basic.html [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-skl1/igt@kms_setmode@basic.html * igt@perf_pmu@init-busy-vcs1: - shard-iclb: [SKIP][86] ([fdo#112080]) -> [PASS][87] +9 similar issues [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb7/igt@perf_pmu@init-busy-vcs1.html [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb2/igt@perf_pmu@init-busy-vcs1.html * igt@prime_vgem@fence-wait-bsd2: - shard-iclb: [SKIP][88] ([fdo#109276]) -> [PASS][89] +13 similar issues [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb7/igt@prime_vgem@fence-wait-bsd2.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html #### Warnings #### * igt@gem_ctx_isolation@vcs1-nonpriv-switch: - shard-iclb: [SKIP][90] ([fdo#109276] / [fdo#112080]) -> [FAIL][91] ([IGT#28]) [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-iclb7/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-iclb1/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html * igt@gem_ctx_isolation@vcs2-reset: - shard-tglb: [SKIP][92] ([fdo#112080]) -> [SKIP][93] ([fdo#111912] / [fdo#112080]) +1 similar issue [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7673/shard-tglb9/igt@gem_ctx_isolation@vcs2-reset.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/shard-tglb6/igt@gem_ctx_isolation@vcs2-reset.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [IGT#28]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/28 [IGT#5]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/5 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#111593]: https://bugs.freedesktop.org/show_bug.cgi?id=111593 [fdo#111606]: https://bugs.freedesktop.org/show_bug.cgi?id=111606 [fdo#111677]: https://bugs.freedesktop.org/show_bug.cgi?id=111677 [fdo#111735]: https://bugs.freedesktop.org/show_bug.cgi?id=111735 [fdo#111764]: https://bugs.freedesktop.org/show_bug.cgi?id=111764 [fdo#111912]: https://bugs.freedesktop.org/show_bug.cgi?id=111912 [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 [fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146 [i915#109]: https://gitlab.freedesktop.org/drm/intel/issues/109 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#221]: https://gitlab.freedesktop.org/drm/intel/issues/221 [i915#247]: https://gitlab.freedesktop.org/drm/intel/issues/247 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#435]: https://gitlab.freedesktop.org/drm/intel/issues/435 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#46]: https://gitlab.freedesktop.org/drm/intel/issues/46 [i915#470]: https://gitlab.freedesktop.org/drm/intel/issues/470 [i915#472]: https://gitlab.freedesktop.org/drm/intel/issues/472 [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 [i915#490]: https://gitlab.freedesktop.org/drm/intel/issues/490 [i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52 [i915#530]: https://gitlab.freedesktop.org/drm/intel/issues/530 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#667]: https://gitlab.freedesktop.org/drm/intel/issues/667 [i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677 [i915#679]: https://gitlab.freedesktop.org/drm/intel/issues/679 [i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69 [i915#707]: https://gitlab.freedesktop.org/drm/intel/issues/707 [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 [i915#923]: https://gitlab.freedesktop.org/drm/intel/issues/923 Participating hosts (11 -> 11) ------------------------------ No changes in participating hosts Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_7673 -> Patchwork_15986 CI-20190529: 20190529 CI_DRM_7673: 6e3335ed7b56aaf9d55ddf51cddea4d844dc3a78 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5357: a555a4b98f90dab655d24bb3d07e9291a8b8dac8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_15986: e550fd5b9f6cf15f7f0b869ba29ae4e61b2d7c54 @ git://anongit.freedesktop.org/gfx-ci/linux piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15986/index.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-01-04 0:13 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-01-03 12:15 [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson 2020-01-03 12:15 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Extend fault handler selftests to all memory regions Chris Wilson 2020-01-03 18:10 ` Chris Wilson 2020-01-03 12:17 ` [Intel-gfx] [PATCH 1/2] drm/i915/gem: Extend mmap support for lmem Chris Wilson 2020-01-03 13:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] " Patchwork 2020-01-03 14:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2020-01-04 0:13 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.