summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgraysky2020-02-27 16:12:06 -0500
committergraysky2020-02-27 16:12:06 -0500
commitc58ecd403baa2feb1c4cb51ba8b4d0fd84287ab1 (patch)
treed589bc9390ea58b97befa54089aff9e50e13e776
parentb98963dc791bae6d1632f83a86bb05b2ac3d14ab (diff)
downloadaur-c58ecd403baa2feb1c4cb51ba8b4d0fd84287ab1.tar.gz
Update to 5.5.7rc1-1
-rw-r--r--.SRCINFO20
-rw-r--r--0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch260
-rw-r--r--0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch145
-rw-r--r--PKGBUILD14
-rw-r--r--config11
5 files changed, 19 insertions, 431 deletions
diff --git a/.SRCINFO b/.SRCINFO
index afa52aa2c04..a773b79d233 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,5 +1,5 @@
pkgbase = linux-rc
- pkgver = 5.5.6rc1
+ pkgver = 5.5.7rc1
pkgrel = 1
url = https://www.kernel.org/
arch = x86_64
@@ -9,17 +9,15 @@ pkgbase = linux-rc
makedepends = bc
makedepends = libelf
options = !strip
- source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.5.6-rc1.xz
- source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.5.6-rc1.sign
- source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.5.5.tar.xz
- source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.5.5.tar.sign
+ source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.5.7-rc1.xz
+ source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.5.7-rc1.sign
+ source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.5.6.tar.xz
+ source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.5.6.tar.sign
source = config
source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
source = 0002-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
source = 0003-iwlwifi-mvm-Do-not-require-PHY_SKU-NVM-section-for-3.patch
- source = 0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch
source = 0005-drm-Remove-PageReserved-manipulation-from-drm_pci_al.patch
- source = 0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch
source = 0007-drm-i915-Serialise-i915_active_acquire-with-__active.patch
source = 0008-drm-i915-gem-Take-runtime-pm-wakeref-prior-to-unbind.patch
source = 0009-drm-i915-gem-Avoid-parking-the-vma-as-we-unbind.patch
@@ -29,17 +27,15 @@ pkgbase = linux-rc
source = 0013-drm-i915-Introduce-a-vma.kref.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
- sha256sums = 30637520cf19e0b341aaa1c91b9bb641259590c94a2fdc876d80b7ec035070e6
+ sha256sums = 88b16b299e43da680bbadaef3e50cfde344b67f70fd5588a44574c4cd9f73c02
sha256sums = SKIP
- sha256sums = 7ac07bc03f2d159f924d25a79df07d1a115a13f44f67455511d3c84c15ac5087
+ sha256sums = 54cc88ab9d7517267d8592905b277424ae441f3d7209c7ad1236533c2be6ee35
sha256sums = SKIP
- sha256sums = e967ac8bd663509cc0ca6451a95a9965eb59832e316eec77484960dcedec8c1c
+ sha256sums = a841aa011edf6bae0ffbe8ead8177e5056de5a6d7333bb96e16917903de4d868
sha256sums = 2be34867fcb55a5ab7ee0f25b3fbe4da1b4c55fd118053c9510a9b1e87ed0960
sha256sums = 39e2bd569c5efe83c2facddd9e0b846a6c35937b1280a9ddead5c150fa8ca10d
sha256sums = 07d60156eb70be84adc1376a3d7434811f1373282c0b5198c4cd580c8bfcaa7e
- sha256sums = 853403b019a9495c72df52cabe85653590b9a4021343c09e2438c25b96aae163
sha256sums = 8385a3771e4d747a8c6d06bb9a3dd73870fc378ded8d0d0f2b1388b89813719b
- sha256sums = 9556c74b7744ad863da61384d2b2b9e996be4652dd4d93d3fcab7f256b224f06
sha256sums = fe4a15e4e85e0a1ab2e6e3ab790ba53eb5cf538b9a16b6e2327cb3c89f66fc75
sha256sums = f0177eb3395c910064a9bbd7ae5849f0e6e0094227d2b01367978ca6553fc10c
sha256sums = 51d6e34f69be927600edb3fddbd0dda75773fb28818bcc35f540cf14501e1ef6
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 1a6d4da6fc0..00000000000
--- a/0004-drm-i915-Wean-off-drm_pci_alloc-drm_pci_free.patch
+++ /dev/null
@@ -1,260 +0,0 @@
-From 1533cd73061e99ed6dd58cba03da2b762a616a95 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: [PATCH 04/14] 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 +-
- .../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);
---
-2.25.0
-
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 93ac94bd672..00000000000
--- a/0006-drm-i915-execlists-Always-force-a-context-reload-whe.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-From 4e64b7d1a9e63f7b9c1cecc8995e6fc1fed42e77 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: [PATCH 06/14] 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;
- };
-
---
-2.25.0
-
diff --git a/PKGBUILD b/PKGBUILD
index a58a8f0c439..e022631d61b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,5 +1,5 @@
# Maintainer: graysky <graysky AT archlinux DOT us>
-# Contributorr: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
pkgbase=linux-rc
pkgrel=1
@@ -7,7 +7,7 @@ _srcname=linux-5.5
_major=5.5
### on initial release this is null otherwise it is the current stable subversion
### ie 1,2,3 corresponding $_major.1, $_major.3 etc.
-_minor=5
+_minor=6
### on initial release comment this out and set to =1
_minorc=$((_minor+1))
#_minorc=1
@@ -33,9 +33,7 @@ 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-i915-Serialise-i915_active_acquire-with-__active.patch
0008-drm-i915-gem-Take-runtime-pm-wakeref-prior-to-unbind.patch
0009-drm-i915-gem-Avoid-parking-the-vma-as-we-unbind.patch
@@ -48,17 +46,15 @@ validpgpkeys=(
'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
'647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
)
-sha256sums=('30637520cf19e0b341aaa1c91b9bb641259590c94a2fdc876d80b7ec035070e6'
+sha256sums=('88b16b299e43da680bbadaef3e50cfde344b67f70fd5588a44574c4cd9f73c02'
'SKIP'
- '7ac07bc03f2d159f924d25a79df07d1a115a13f44f67455511d3c84c15ac5087'
+ '54cc88ab9d7517267d8592905b277424ae441f3d7209c7ad1236533c2be6ee35'
'SKIP'
- 'e967ac8bd663509cc0ca6451a95a9965eb59832e316eec77484960dcedec8c1c'
+ 'a841aa011edf6bae0ffbe8ead8177e5056de5a6d7333bb96e16917903de4d868'
'2be34867fcb55a5ab7ee0f25b3fbe4da1b4c55fd118053c9510a9b1e87ed0960'
'39e2bd569c5efe83c2facddd9e0b846a6c35937b1280a9ddead5c150fa8ca10d'
'07d60156eb70be84adc1376a3d7434811f1373282c0b5198c4cd580c8bfcaa7e'
- '853403b019a9495c72df52cabe85653590b9a4021343c09e2438c25b96aae163'
'8385a3771e4d747a8c6d06bb9a3dd73870fc378ded8d0d0f2b1388b89813719b'
- '9556c74b7744ad863da61384d2b2b9e996be4652dd4d93d3fcab7f256b224f06'
'fe4a15e4e85e0a1ab2e6e3ab790ba53eb5cf538b9a16b6e2327cb3c89f66fc75'
'f0177eb3395c910064a9bbd7ae5849f0e6e0094227d2b01367978ca6553fc10c'
'51d6e34f69be927600edb3fddbd0dda75773fb28818bcc35f540cf14501e1ef6'
diff --git a/config b/config
index c07295df5b6..d21a0453eb4 100644
--- a/config
+++ b/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 5.5.0-arch1 Kernel Configuration
+# Linux/x86 5.5.5-arch1 Kernel Configuration
#
#
@@ -6858,7 +6858,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
@@ -10350,8 +10350,7 @@ CONFIG_FONT_8x16=y
# CONFIG_FONT_10x18 is not set
# CONFIG_FONT_SUN8x16 is not set
# CONFIG_FONT_SUN12x22 is not set
-# CONFIG_FONT_TER16x32 is not set
-CONFIG_FONT_AUTOSELECT=y
+CONFIG_FONT_TER16x32=y
CONFIG_SG_POOL=y
CONFIG_ARCH_HAS_PMEM_API=y
CONFIG_MEMREGION=y
@@ -10421,7 +10420,9 @@ CONFIG_DEBUG_MISC=y
# CONFIG_PAGE_EXTENSION is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_PAGE_OWNER is not set
-# CONFIG_PAGE_POISONING is not set
+CONFIG_PAGE_POISONING=y
+CONFIG_PAGE_POISONING_NO_SANITY=y
+CONFIG_PAGE_POISONING_ZERO=y
# CONFIG_DEBUG_PAGE_REF is not set
# CONFIG_DEBUG_RODATA_TEST is not set
# CONFIG_DEBUG_OBJECTS is not set