diff options
-rw-r--r-- | 0004-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch (renamed from 0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch) | 0 | ||||
-rw-r--r-- | 0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch | 260 | ||||
-rw-r--r-- | 0005-drm_915_Serialise_i915_active_acquire_with__active_retire.patch (renamed from 0007-drm_915_Serialise_i915_active_acquire_with__active_retire.patch) | 0 | ||||
-rw-r--r-- | 0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch | 145 | ||||
-rw-r--r-- | 0006-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch (renamed from 0008-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch) | 0 | ||||
-rw-r--r-- | 0007-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch (renamed from 0009-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch) | 0 | ||||
-rw-r--r-- | 0008-drm-i915-gem-Try-to-flush-pending-unbind-events.patch (renamed from 0010-drm-i915-gem-Try-to-flush-pending-unbind-events.patch) | 0 | ||||
-rw-r--r-- | 0009-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch (renamed from 0011-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch) | 0 | ||||
-rw-r--r-- | 0010-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch (renamed from 0012-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch) | 0 | ||||
-rw-r--r-- | 0011-drm-i915-Introduce-a-vma.kref.patch (renamed from 0013-drm-i915-Introduce-a-vma.kref.patch) | 0 | ||||
-rw-r--r-- | PKGBUILD | 44 | ||||
-rw-r--r-- | config | 2 |
12 files changed, 20 insertions, 431 deletions
diff --git a/0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch b/0004-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch index 15688c8..15688c8 100644 --- a/0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch +++ b/0004-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch diff --git a/0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch b/0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch deleted file mode 100644 index c5c6f16..0000000 --- a/0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch +++ /dev/null @@ -1,260 +0,0 @@ -From 7af5e53f87d728579cba99568717a6af3625184b Mon Sep 17 00:00:00 2001 -From: Chris Wilson <chris@chris-wilson.co.uk> -Date: Sun, 2 Feb 2020 15:39:34 +0000 -Subject: drm/i915: Wean off drm_pci_alloc/drm_pci_free - -drm_pci_alloc and drm_pci_free are just very thin wrappers around -dma_alloc_coherent, with a note that we should be removing them. -Furthermore since - -commit de09d31dd38a50fdce106c15abd68432eebbd014 -Author: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> -Date: Fri Jan 15 16:51:42 2016 -0800 - - page-flags: define PG_reserved behavior on compound pages - - As far as I can see there's no users of PG_reserved on compound pages. - Let's use PF_NO_COMPOUND here. - -drm_pci_alloc has been declared broken since it mixes GFP_COMP and -SetPageReserved. Avoid this conflict by weaning ourselves off using the -abstraction and using the dma functions directly. - -Reported-by: Taketo Kabe -Closes: https://gitlab.freedesktop.org/drm/intel/issues/1027 -Fixes: de09d31dd38a ("page-flags: define PG_reserved behavior on compound pages") -Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> -Cc: <stable@vger.kernel.org> # v4.5+ -Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> -Link: https://patchwork.freedesktop.org/patch/msgid/20200202153934.3899472-1-chris@chris-wilson.co.uk ---- - drivers/gpu/drm/i915/display/intel_display.c | 2 +- - drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 3 - - drivers/gpu/drm/i915/gem/i915_gem_phys.c | 98 ++++++++++++------------ - drivers/gpu/drm/i915/i915_gem.c | 8 +- - 4 files changed, 55 insertions(+), 56 deletions(-) - -diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c -index 301897791627..b670239a293b 100644 ---- a/drivers/gpu/drm/i915/display/intel_display.c -+++ b/drivers/gpu/drm/i915/display/intel_display.c -@@ -10731,7 +10731,7 @@ static u32 intel_cursor_base(const struct intel_plane_state *plane_state) - u32 base; - - if (INTEL_INFO(dev_priv)->display.cursor_needs_physical) -- base = obj->phys_handle->busaddr; -+ base = sg_dma_address(obj->mm.pages->sgl); - else - base = intel_plane_ggtt_offset(plane_state); - -diff --git a/drivers/gpu/drm/i915/gem/i915_gem_object_types.h b/drivers/gpu/drm/i915/gem/i915_gem_object_types.h -index e3f3944fbd90..1078a76d6d84 100644 ---- a/drivers/gpu/drm/i915/gem/i915_gem_object_types.h -+++ b/drivers/gpu/drm/i915/gem/i915_gem_object_types.h -@@ -260,9 +260,6 @@ struct drm_i915_gem_object { - - void *gvt_info; - }; -- -- /** for phys allocated objects */ -- struct drm_dma_handle *phys_handle; - }; - - static inline struct drm_i915_gem_object * -diff --git a/drivers/gpu/drm/i915/gem/i915_gem_phys.c b/drivers/gpu/drm/i915/gem/i915_gem_phys.c -index 8043ff63d73f..5e2e0109c9ba 100644 ---- a/drivers/gpu/drm/i915/gem/i915_gem_phys.c -+++ b/drivers/gpu/drm/i915/gem/i915_gem_phys.c -@@ -22,88 +22,87 @@ - static int i915_gem_object_get_pages_phys(struct drm_i915_gem_object *obj) - { - struct address_space *mapping = obj->base.filp->f_mapping; -- struct drm_dma_handle *phys; -- struct sg_table *st; - struct scatterlist *sg; -- char *vaddr; -+ struct sg_table *st; -+ dma_addr_t dma; -+ void *vaddr; -+ void *dst; - int i; -- int err; - - if (WARN_ON(i915_gem_object_needs_bit17_swizzle(obj))) - return -EINVAL; - -- /* Always aligning to the object size, allows a single allocation -+ /* -+ * Always aligning to the object size, allows a single allocation - * to handle all possible callers, and given typical object sizes, - * the alignment of the buddy allocation will naturally match. - */ -- phys = drm_pci_alloc(obj->base.dev, -- roundup_pow_of_two(obj->base.size), -- roundup_pow_of_two(obj->base.size)); -- if (!phys) -+ vaddr = dma_alloc_coherent(&obj->base.dev->pdev->dev, -+ roundup_pow_of_two(obj->base.size), -+ &dma, GFP_KERNEL); -+ if (!vaddr) - return -ENOMEM; - -- vaddr = phys->vaddr; -+ st = kmalloc(sizeof(*st), GFP_KERNEL); -+ if (!st) -+ goto err_pci; -+ -+ if (sg_alloc_table(st, 1, GFP_KERNEL)) -+ goto err_st; -+ -+ sg = st->sgl; -+ sg->offset = 0; -+ sg->length = obj->base.size; -+ -+ sg_assign_page(sg, (struct page *)vaddr); -+ sg_dma_address(sg) = dma; -+ sg_dma_len(sg) = obj->base.size; -+ -+ dst = vaddr; - for (i = 0; i < obj->base.size / PAGE_SIZE; i++) { - struct page *page; -- char *src; -+ void *src; - - page = shmem_read_mapping_page(mapping, i); -- if (IS_ERR(page)) { -- err = PTR_ERR(page); -- goto err_phys; -- } -+ if (IS_ERR(page)) -+ goto err_st; - - src = kmap_atomic(page); -- memcpy(vaddr, src, PAGE_SIZE); -- drm_clflush_virt_range(vaddr, PAGE_SIZE); -+ memcpy(dst, src, PAGE_SIZE); -+ drm_clflush_virt_range(dst, PAGE_SIZE); - kunmap_atomic(src); - - put_page(page); -- vaddr += PAGE_SIZE; -+ dst += PAGE_SIZE; - } - - intel_gt_chipset_flush(&to_i915(obj->base.dev)->gt); - -- st = kmalloc(sizeof(*st), GFP_KERNEL); -- if (!st) { -- err = -ENOMEM; -- goto err_phys; -- } -- -- if (sg_alloc_table(st, 1, GFP_KERNEL)) { -- kfree(st); -- err = -ENOMEM; -- goto err_phys; -- } -- -- sg = st->sgl; -- sg->offset = 0; -- sg->length = obj->base.size; -- -- sg_dma_address(sg) = phys->busaddr; -- sg_dma_len(sg) = obj->base.size; -- -- obj->phys_handle = phys; -- - __i915_gem_object_set_pages(obj, st, sg->length); - - return 0; - --err_phys: -- drm_pci_free(obj->base.dev, phys); -- -- return err; -+err_st: -+ kfree(st); -+err_pci: -+ dma_free_coherent(&obj->base.dev->pdev->dev, -+ roundup_pow_of_two(obj->base.size), -+ vaddr, dma); -+ return -ENOMEM; - } - - static void - i915_gem_object_put_pages_phys(struct drm_i915_gem_object *obj, - struct sg_table *pages) - { -+ dma_addr_t dma = sg_dma_address(pages->sgl); -+ void *vaddr = sg_page(pages->sgl); -+ - __i915_gem_object_release_shmem(obj, pages, false); - - if (obj->mm.dirty) { - struct address_space *mapping = obj->base.filp->f_mapping; -- char *vaddr = obj->phys_handle->vaddr; -+ void *src = vaddr; - int i; - - for (i = 0; i < obj->base.size / PAGE_SIZE; i++) { -@@ -115,15 +114,16 @@ i915_gem_object_put_pages_phys(struct drm_i915_gem_object *obj, - continue; - - dst = kmap_atomic(page); -- drm_clflush_virt_range(vaddr, PAGE_SIZE); -- memcpy(dst, vaddr, PAGE_SIZE); -+ drm_clflush_virt_range(src, PAGE_SIZE); -+ memcpy(dst, src, PAGE_SIZE); - kunmap_atomic(dst); - - set_page_dirty(page); - if (obj->mm.madv == I915_MADV_WILLNEED) - mark_page_accessed(page); - put_page(page); -- vaddr += PAGE_SIZE; -+ -+ src += PAGE_SIZE; - } - obj->mm.dirty = false; - } -@@ -131,7 +131,9 @@ i915_gem_object_put_pages_phys(struct drm_i915_gem_object *obj, - sg_free_table(pages); - kfree(pages); - -- drm_pci_free(obj->base.dev, obj->phys_handle); -+ dma_free_coherent(&obj->base.dev->pdev->dev, -+ roundup_pow_of_two(obj->base.size), -+ vaddr, dma); - } - - static void phys_release(struct drm_i915_gem_object *obj) -diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c -index 905890e3ac24..3f07948ea4da 100644 ---- a/drivers/gpu/drm/i915/i915_gem.c -+++ b/drivers/gpu/drm/i915/i915_gem.c -@@ -154,7 +154,7 @@ i915_gem_phys_pwrite(struct drm_i915_gem_object *obj, - struct drm_i915_gem_pwrite *args, - struct drm_file *file) - { -- void *vaddr = obj->phys_handle->vaddr + args->offset; -+ void *vaddr = sg_page(obj->mm.pages->sgl) + args->offset; - char __user *user_data = u64_to_user_ptr(args->data_ptr); - - /* -@@ -800,10 +800,10 @@ i915_gem_pwrite_ioctl(struct drm_device *dev, void *data, - ret = i915_gem_gtt_pwrite_fast(obj, args); - - if (ret == -EFAULT || ret == -ENOSPC) { -- if (obj->phys_handle) -- ret = i915_gem_phys_pwrite(obj, args, file); -- else -+ if (i915_gem_object_has_struct_page(obj)) - ret = i915_gem_shmem_pwrite(obj, args); -+ else -+ ret = i915_gem_phys_pwrite(obj, args, file); - } - - i915_gem_object_unpin_pages(obj); --- -cgit v1.2.2-1-gc45e - diff --git a/0007-drm_915_Serialise_i915_active_acquire_with__active_retire.patch b/0005-drm_915_Serialise_i915_active_acquire_with__active_retire.patch index 937adac..937adac 100644 --- a/0007-drm_915_Serialise_i915_active_acquire_with__active_retire.patch +++ b/0005-drm_915_Serialise_i915_active_acquire_with__active_retire.patch diff --git a/0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch b/0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch deleted file mode 100644 index b6214d2..0000000 --- a/0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch +++ /dev/null @@ -1,145 +0,0 @@ -From 6ffd5925e2659e589d48b8dcaf06e0b3cc0f4d52 Mon Sep 17 00:00:00 2001 -From: Chris Wilson <chris@chris-wilson.co.uk> -Date: Fri, 7 Feb 2020 21:14:52 +0000 -Subject: drm/i915/execlists: Always force a context reload when rewinding - RING_TAIL - -If we rewind the RING_TAIL on a context, due to a preemption event, we -must force the context restore for the RING_TAIL update to be properly -handled. Rather than note which preemption events may cause us to rewind -the tail, compare the new request's tail with the previously submitted -RING_TAIL, as it turns out that timeslicing was causing unexpected -rewinds. - - <idle>-0 0d.s2 1280851190us : __execlists_submission_tasklet: 0000:00:02.0 rcs0: expired last=130:4698, prio=3, hint=3 - <idle>-0 0d.s2 1280851192us : __i915_request_unsubmit: 0000:00:02.0 rcs0: fence 66:119966, current 119964 - <idle>-0 0d.s2 1280851195us : __i915_request_unsubmit: 0000:00:02.0 rcs0: fence 130:4698, current 4695 - <idle>-0 0d.s2 1280851198us : __i915_request_unsubmit: 0000:00:02.0 rcs0: fence 130:4696, current 4695 -^---- Note we unwind 2 requests from the same context - - <idle>-0 0d.s2 1280851208us : __i915_request_submit: 0000:00:02.0 rcs0: fence 130:4696, current 4695 - <idle>-0 0d.s2 1280851213us : __i915_request_submit: 0000:00:02.0 rcs0: fence 134:1508, current 1506 -^---- But to apply the new timeslice, we have to replay the first request - before the new client can start -- the unexpected RING_TAIL rewind - - <idle>-0 0d.s2 1280851219us : trace_ports: 0000:00:02.0 rcs0: submit { 130:4696*, 134:1508 } - synmark2-5425 2..s. 1280851239us : process_csb: 0000:00:02.0 rcs0: cs-irq head=5, tail=0 - synmark2-5425 2..s. 1280851240us : process_csb: 0000:00:02.0 rcs0: csb[0]: status=0x00008002:0x00000000 -^---- Preemption event for the ELSP update; note the lite-restore - - synmark2-5425 2..s. 1280851243us : trace_ports: 0000:00:02.0 rcs0: preempted { 130:4698, 66:119966 } - synmark2-5425 2..s. 1280851246us : trace_ports: 0000:00:02.0 rcs0: promote { 130:4696*, 134:1508 } - synmark2-5425 2.... 1280851462us : __i915_request_commit: 0000:00:02.0 rcs0: fence 130:4700, current 4695 - synmark2-5425 2.... 1280852111us : __i915_request_commit: 0000:00:02.0 rcs0: fence 130:4702, current 4695 - synmark2-5425 2.Ns1 1280852296us : process_csb: 0000:00:02.0 rcs0: cs-irq head=0, tail=2 - synmark2-5425 2.Ns1 1280852297us : process_csb: 0000:00:02.0 rcs0: csb[1]: status=0x00000814:0x00000000 - synmark2-5425 2.Ns1 1280852299us : trace_ports: 0000:00:02.0 rcs0: completed { 130:4696!, 134:1508 } - synmark2-5425 2.Ns1 1280852301us : process_csb: 0000:00:02.0 rcs0: csb[2]: status=0x00000818:0x00000040 - synmark2-5425 2.Ns1 1280852302us : trace_ports: 0000:00:02.0 rcs0: completed { 134:1508, 0:0 } - synmark2-5425 2.Ns1 1280852313us : process_csb: process_csb:2336 GEM_BUG_ON(!i915_request_completed(*execlists->active) && !reset_in_progress(execlists)) - -Fixes: 8ee36e048c98 ("drm/i915/execlists: Minimalistic timeslicing") -Referenecs: 82c69bf58650 ("drm/i915/gt: Detect if we miss WaIdleLiteRestore") -Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> -Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> -Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com> -Cc: <stable@vger.kernel.org> # v5.4+ -Link: https://patchwork.freedesktop.org/patch/msgid/20200207211452.2860634-1-chris@chris-wilson.co.uk ---- - drivers/gpu/drm/i915/gt/intel_lrc.c | 18 ++++++++---------- - drivers/gpu/drm/i915/gt/intel_ring.c | 1 + - drivers/gpu/drm/i915/gt/intel_ring.h | 8 ++++++++ - drivers/gpu/drm/i915/gt/intel_ring_types.h | 1 + - 4 files changed, 18 insertions(+), 10 deletions(-) - -diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c -index d925a1035c9d..1b4784bfa7e5 100644 ---- a/drivers/gpu/drm/i915/gt/intel_lrc.c -+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c -@@ -1157,7 +1157,7 @@ static u64 execlists_update_context(struct i915_request *rq) - { - struct intel_context *ce = rq->hw_context; - u64 desc = ce->lrc_desc; -- u32 tail; -+ u32 tail, prev; - - /* - * WaIdleLiteRestore:bdw,skl -@@ -1170,9 +1170,15 @@ static u64 execlists_update_context(struct i915_request *rq) - * subsequent resubmissions (for lite restore). Should that fail us, - * and we try and submit the same tail again, force the context - * reload. -+ * -+ * If we need to return to a preempted context, we need to skip the -+ * lite-restore and force it to reload the RING_TAIL. Otherwise, the -+ * HW has a tendency to ignore us rewinding the TAIL to the end of -+ * an earlier request. - */ - tail = intel_ring_set_tail(rq->ring, rq->tail); -- if (unlikely(ce->lrc_reg_state[CTX_RING_TAIL] == tail)) -+ prev = ce->lrc_reg_state[CTX_RING_TAIL]; -+ if (unlikely(intel_ring_direction(rq->ring, tail, prev) <= 0)) - desc |= CTX_DESC_FORCE_RESTORE; - ce->lrc_reg_state[CTX_RING_TAIL] = tail; - rq->tail = rq->wa_tail; -@@ -1651,14 +1657,6 @@ static void execlists_dequeue(struct intel_engine_cs *engine) - */ - __unwind_incomplete_requests(engine); - -- /* -- * If we need to return to the preempted context, we -- * need to skip the lite-restore and force it to -- * reload the RING_TAIL. Otherwise, the HW has a -- * tendency to ignore us rewinding the TAIL to the -- * end of an earlier request. -- */ -- last->hw_context->lrc_desc |= CTX_DESC_FORCE_RESTORE; - last = NULL; - } else if (need_timeslice(engine, last) && - timer_expired(&engine->execlists.timer)) { -diff --git a/drivers/gpu/drm/i915/gt/intel_ring.c b/drivers/gpu/drm/i915/gt/intel_ring.c -index 374b28f13ca0..6ff803f397c4 100644 ---- a/drivers/gpu/drm/i915/gt/intel_ring.c -+++ b/drivers/gpu/drm/i915/gt/intel_ring.c -@@ -145,6 +145,7 @@ intel_engine_create_ring(struct intel_engine_cs *engine, int size) - - kref_init(&ring->ref); - ring->size = size; -+ ring->wrap = BITS_PER_TYPE(ring->size) - ilog2(size); - - /* - * Workaround an erratum on the i830 which causes a hang if -diff --git a/drivers/gpu/drm/i915/gt/intel_ring.h b/drivers/gpu/drm/i915/gt/intel_ring.h -index ea2839d9e044..5bdce24994aa 100644 ---- a/drivers/gpu/drm/i915/gt/intel_ring.h -+++ b/drivers/gpu/drm/i915/gt/intel_ring.h -@@ -56,6 +56,14 @@ static inline u32 intel_ring_wrap(const struct intel_ring *ring, u32 pos) - return pos & (ring->size - 1); - } - -+static inline int intel_ring_direction(const struct intel_ring *ring, -+ u32 next, u32 prev) -+{ -+ typecheck(typeof(ring->size), next); -+ typecheck(typeof(ring->size), prev); -+ return (next - prev) << ring->wrap; -+} -+ - static inline bool - intel_ring_offset_valid(const struct intel_ring *ring, - unsigned int pos) -diff --git a/drivers/gpu/drm/i915/gt/intel_ring_types.h b/drivers/gpu/drm/i915/gt/intel_ring_types.h -index d9f17f38e0cc..3cd7fec7fd8d 100644 ---- a/drivers/gpu/drm/i915/gt/intel_ring_types.h -+++ b/drivers/gpu/drm/i915/gt/intel_ring_types.h -@@ -45,6 +45,7 @@ struct intel_ring { - - u32 space; - u32 size; -+ u32 wrap; - u32 effective_size; - }; - --- -cgit v1.2.2-1-gc45e - diff --git a/0008-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch b/0006-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch index 3afe243..3afe243 100644 --- a/0008-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch +++ b/0006-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch diff --git a/0009-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch b/0007-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch index 9887e67..9887e67 100644 --- a/0009-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch +++ b/0007-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch diff --git a/0010-drm-i915-gem-Try-to-flush-pending-unbind-events.patch b/0008-drm-i915-gem-Try-to-flush-pending-unbind-events.patch index 52196eb..52196eb 100644 --- a/0010-drm-i915-gem-Try-to-flush-pending-unbind-events.patch +++ b/0008-drm-i915-gem-Try-to-flush-pending-unbind-events.patch diff --git a/0011-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch b/0009-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch index 2719884..2719884 100644 --- a/0011-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch +++ b/0009-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch diff --git a/0012-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch b/0010-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch index 9db4525..9db4525 100644 --- a/0012-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch +++ b/0010-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch diff --git a/0013-drm-i915-Introduce-a-vma.kref.patch b/0011-drm-i915-Introduce-a-vma.kref.patch index 2ad022b..2ad022b 100644 --- a/0013-drm-i915-Introduce-a-vma.kref.patch +++ b/0011-drm-i915-Introduce-a-vma.kref.patch @@ -19,7 +19,7 @@ pkgbase=linux-ck _supver=5 _majver=5 -_minver=6 +_minver=7 _gccpatchver='20191217' _gccpatchger='9.1' _gccpatchker='5.5' @@ -46,16 +46,14 @@ source=( 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch 0002-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch 0003-iwlwifi-mvm-Do-not-require-PHY_SKU-NVM-section-for-3.patch - 0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch - 0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch - 0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch - 0007-drm_915_Serialise_i915_active_acquire_with__active_retire.patch - 0008-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch - 0009-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch - 0010-drm-i915-gem-Try-to-flush-pending-unbind-events.patch - 0011-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch - 0012-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch - 0013-drm-i915-Introduce-a-vma.kref.patch + 0004-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch + 0005-drm_915_Serialise_i915_active_acquire_with__active_retire.patch + 0006-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch + 0007-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch + 0008-drm-i915-gem-Try-to-flush-pending-unbind-events.patch + 0009-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch + 0010-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch + 0011-drm-i915-Introduce-a-vma.kref.patch linux-ck-patch-${_supver}.${_majver}-${_ckpatchversion}.xz::http://ck.kolivas.org/patches/${_supver}.0/${_supver}.${_majver}/${_supver}.${_majver}-${_ckpatchversion}/patch-${_supver}.${_majver}-${_ckpatchversion}.xz graysky_bdver2-hotfix.patch kernel_gcc_patch-${_gccpatchver}.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/${_gccpatchver}.tar.gz @@ -68,14 +66,12 @@ validpgpkeys=( '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) # https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc -b2sums=('5af861196e6365c4ca00f658d8128455f0eb00cfd98ca7f7b37dcf5c962dd332f2a12b29a4bd0d13463c09573ccb97993129736dd2464bc03305583974546ab1' +b2sums=('25a0c09a2a8b2ff8762dcf29dc326339537a49996b232c1568de036475a3afb62406fcf85c4357a8fa32088fdb7f868c46ff13a6fa3c2c554b8717c7fbe57712' 'SKIP' 'ab1fb19c67d4c107f75767581c33d9c1458b4d9fdb88f4adb41d30a36f5a2f95f1c48ef079eb87e1e6e8ce2f98b293195cb2c0f2a8ec975aa817453289158c6e' '2e822cf7d4ff8b7458e22d3ce110fd8534e17a9aac2feace41c591f70697e1fab7bd9ce307c60a6361fbe525d10dab74c8b76fcb5276cd27f6e945f8fdfcc25c' '1ae8107eb3d56db5b61fa07a35181232cc0be6c66f10b313a2f6b473bdbb33a42d8be3660413eef5321e08a775cda47260775174f74b803f3e66cdb890b9c6f3' - '6018d823c70f6129b8b52c77f9308e90a83de575f2206a056d562469f227e7651815ff4ed9be484409ea2a109eb6743fb0c71067f237d714934bd02ea132973e' 'd8027cd96a447ea0987a67f3e65d157bb3d396069a944b140610f74c663677fe45e171e96a92dfd5eda8f71a5c715fd8114ee0e60b7620bc401a2a548bcf83cc' - '2d8579a1d27a0a40866b4f7f5c63ad5e402d919e21d09faf4cec14f3b19b8fc42b6fc3cb8d26dce3100a9e63ca21ab01519a0e804f34c35e4bda154fbe725602' 'df41200d86f1fd493861d4b4a091ec5f853ce7668ec9712f57e574ce2c1a94c7054ec8abcdf947086e5f98b0cdde73523521552536c91373dacdd10c4ecf4c1a' 'f4d5f82c5deb981f475fd18a408e23b5f170e23c7a49c3563171e55abd78c07c475a7a9c67850c4a3665ce3447cd7b5fb3171e47af8cd8077822f2a6679cfd9b' '70d02b7fc8b26c783eaabafb9bef5d3895c0031642dc8b71d8737762722695221340315576433d1544b79b37446212ce5e3d0936f695af307b3344a717274ba8' @@ -88,7 +84,7 @@ b2sums=('5af861196e6365c4ca00f658d8128455f0eb00cfd98ca7f7b37dcf5c962dd332f2a12b2 'd76bd0bf237ea2bb7999fd3715cb664d89148cb0ade8057d57cdb40bc0a7954336e50ee077312e5e192398b0f35f055786deb98af9130d57e60f2ea040fbb66f' '2e58bb89b247b1678355368956e67c1de51fcde97a227b2162f6771e30f17fa5520faafe7be4b6816a542e7ae10d05f64c6b6354f352c12746d4b8da632936dd' 'fde132f3705d908e6f2147c78a2193289916d72304ca5efa2229d79fc3e57a857314ce94e71425caef2f7f7b6cf87f05ef86335dc8bd4be78e7035afe608005a' - 'ed087b05d12bf5fcec63914e19e70f0caed5892645c0a35819f1b12a48b4e78236ebf060de4ed03eb20210182510d1e95385cdfcde6fe72d1c55db59c3f8968e') + '45f839ec4a1eb901e348d63c52f2c9b80c430d4a1885dff86ffb81eec2e10a7c8863e5b361e37d09e05aa2b20154978026306b3340f36c74c77daa7f2273c342') #export KBUILD_BUILD_HOST=arc4linux export KBUILD_BUILD_USER=$pkgbase @@ -109,16 +105,14 @@ prepare() { patch -p1 -i ../0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch patch -p1 -i ../0002-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch patch -p1 -i ../0003-iwlwifi-mvm-Do-not-require-PHY_SKU-NVM-section-for-3.patch - patch -p1 -i ../0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch - patch -p1 -i ../0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch - patch -p1 -i ../0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch - patch -p1 -i ../0007-drm_915_Serialise_i915_active_acquire_with__active_retire.patch - patch -p1 -i ../0008-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch - patch -p1 -i ../0009-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch - patch -p1 -i ../0010-drm-i915-gem-Try-to-flush-pending-unbind-events.patch - patch -p1 -i ../0011-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch - patch -p1 -i ../0012-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch - patch -p1 -i ../0013-drm-i915-Introduce-a-vma.kref.patch + patch -p1 -i ../0004-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch + patch -p1 -i ../0005-drm_915_Serialise_i915_active_acquire_with__active_retire.patch + patch -p1 -i ../0006-drm_i915_gem_Take_runtime-pm_wakeref_prior_to_unbinding.patch + patch -p1 -i ../0007-drm-915-gem-Avoid-parking-the-vma-as-we-unbind.patch + patch -p1 -i ../0008-drm-i915-gem-Try-to-flush-pending-unbind-events.patch + patch -p1 -i ../0009-drm-i915-gem-Reinitialise-the-local-list-before-repeating.patch + patch -p1 -i ../0010-drm-i915-Add-a-simple-is-bound-check-before-unbinding.patch + patch -p1 -i ../0011-drm-i915-Introduce-a-vma.kref.patch # fix naming schema in EXTRAVERSION of ck patch set @@ -6844,7 +6844,7 @@ CONFIG_SND_SOC_INTEL_HASWELL=m CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m -# CONFIG_SND_SOC_INTEL_SKYLAKE is not set +CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SKL=m CONFIG_SND_SOC_INTEL_APL=m CONFIG_SND_SOC_INTEL_KBL=m |