summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeka2022-11-03 19:58:05 +0300
committerJeka2022-11-03 19:58:05 +0300
commita1ba5cc2d545bb0902df05c8d3be97032b18dda4 (patch)
tree702ef60fa93e11c6bde9f929c3296281e5e5238a
parent96fc48bdaa547a775eec2f79d7bd297299bb3d31 (diff)
downloadaur-a1ba5cc2d545bb0902df05c8d3be97032b18dda4.tar.gz
kernel release 6.0.7
-rw-r--r--.SRCINFO28
-rw-r--r--0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch229
-rw-r--r--0103-soundwire_intel_Initialize_clock_stop_timeout.patch (renamed from fb23dad87a0bfb6fdfde3dc1d18104da631d050a.patch)7
-rw-r--r--0104-drm_sched_add_DRM_SCHED_FENCE_DONT_PIPELINE_flag.patch (renamed from 64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc.patch)12
-rw-r--r--0105-drm_amdgpu_use_DRM_SCHED_FENCE_DONT_PIPELINE_for_VM_updates.patch (renamed from a24b69f369c6c55be8ce40427feb4e127afae129.patch)5
-rw-r--r--6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch27
-rw-r--r--785699dbc7041b99e0027bff27ffe17eba202e96.patch65
-rw-r--r--PKGBUILD26
-rw-r--r--config2
9 files changed, 33 insertions, 368 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e4bbfb2cb85d..e061ee2b7ed7 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = linux-jcore
pkgdesc = Kernel for Manjaro/Arch (ACS override patch include)
- pkgver = 6.0.6
- pkgrel = 2
+ pkgver = 6.0.7
+ pkgrel = 1
url = https://www.kernel.org/
arch = x86_64
license = GPL2
@@ -20,16 +20,13 @@ pkgbase = linux-jcore
replaces = linux-acs-manjaro
replaces = linux-acs-manjaro-headers
options = !strip
- source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.6.tar.xz
+ source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.7.tar.xz
source = config
source = 0101-ZEN_Add_sysctl_and_CONFIG_to_disallow_unprivileged_CLONE_NEWUSER.patch
source = 0102-mm_vmscan_fix_extreme_overreclaim_and_swap_floods.patch
- source = 0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch
- source = fb23dad87a0bfb6fdfde3dc1d18104da631d050a.patch
- source = 64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc.patch
- source = a24b69f369c6c55be8ce40427feb4e127afae129.patch
- source = 785699dbc7041b99e0027bff27ffe17eba202e96.patch
- source = 6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch
+ source = 0103-soundwire_intel_Initialize_clock_stop_timeout.patch
+ source = 0104-drm_sched_add_DRM_SCHED_FENCE_DONT_PIPELINE_flag.patch
+ source = 0105-drm_amdgpu_use_DRM_SCHED_FENCE_DONT_PIPELINE_for_VM_updates.patch
source = 0301-revert-fbcon-remove-now-unusued-softback_lines-cursor-argument.patch
source = 0302-revert-fbcon-remove-no-op-fbcon_set_origin.patch
source = 0303-revert-fbcon-remove-soft-scrollback-code.patch
@@ -47,16 +44,13 @@ pkgbase = linux-jcore
source = 0412-bootsplash.patch
source = 0413-bootsplash.gitpatch
source = 0999-acs.gitpatch
- sha256sums = 864b05af2d869ba73d61a9c5959e4531a141ab2bd7b217483671f625f9747faa
- sha256sums = 00b243b5be38077d073074099b46afcd4b9b0e63a54f490284c4d9c522ac3fc4
+ sha256sums = 67dacc2b78605a56e997f4c08d009be87c98ec66f1870220226c8b3cc676590f
+ sha256sums = d9f5c5959ea6fc4601a1fd78c00982bb5bf873e904f140559ccb7359097ee194
sha256sums = 05f04019d4a2ee072238c32860fa80d673687d84d78ef436ae9332b6fb788467
sha256sums = a75d2a2322c8cd99a6dc9945424fd9006e7a8f9d2793c0ae97ef931f2d54b9a5
- sha256sums = a8a2d8b402b2877df1a949a106c634b6c366dd33b954c4b735ce1d3778214169
- sha256sums = 6c84ff721c3ef0561f532c92cf0096d9adb7e12414bc1fc80b0824e47a863213
- sha256sums = 86ab8a9821ea7300ff7f7c9d64cf54f6662ae4609097fff3795e548f3181d603
- sha256sums = 664890dff8196b0ddf14c6c698dedc4b14251e353bfae2b4fd68e3c487ab3dd6
- sha256sums = ad6fb3d449ded539840cc2dc5e12ecbc9563a68b3054bc93dd302f4ab58d7ca2
- sha256sums = 232ed297c6535e90f51e02449de236297bb2df6d3d159a8cfb78eccb08e68dbe
+ sha256sums = 5a72a4163937bc588d6a8ed6320e610f6512376b7aa20c4ada5c0ae09cdcd525
+ sha256sums = 8ecbe2fdd40c1accc4e7ccd687c319938c18f5adf056ff314c7702775347adf9
+ sha256sums = 11b7c141c218d6c026a29aed5ba3c3322343ae677155a6dccf622c151eb1b1aa
sha256sums = 2b11905b63b05b25807dd64757c779da74dd4c37e36d3f7a46485b1ee5a9d326
sha256sums = 94a8538251ad148f1025cc3de446ce64f73dc32b01815426fb159c722e8fa5bc
sha256sums = 8e5c147591d14300a59ed8354a9d0746cf78650256558b45f964ca76eaed9a9f
diff --git a/0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch b/0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch
deleted file mode 100644
index b5087316dab2..000000000000
--- a/0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch
+++ /dev/null
@@ -1,229 +0,0 @@
-
-From 430daaab3c78de6bd82f10cfb5a0f016c6e583f6 Mon Sep 17 00:00:00 2001
-From: Desmond Cheong Zhi Xi <desmondcheongzx@gmail.com>
-Date: Mon, 4 Oct 2021 14:07:34 -0400
-Subject: [PATCH] Bluetooth: fix deadlock for RFCOMM sk state change
-
-Syzbot reports the following task hang [1]:
-
-INFO: task syz-executor255:8499 blocked for more than 143 seconds.
- Not tainted 5.14.0-rc7-syzkaller #0
-
-Call Trace:
- context_switch kernel/sched/core.c:4681 [inline]
- __schedule+0x93a/0x26f0 kernel/sched/core.c:5938
- schedule+0xd3/0x270 kernel/sched/core.c:6017
- __lock_sock+0x13d/0x260 net/core/sock.c:2644
- lock_sock_nested+0xf6/0x120 net/core/sock.c:3185
- lock_sock include/net/sock.h:1612 [inline]
- rfcomm_sk_state_change+0xb4/0x390 net/bluetooth/rfcomm/sock.c:73
- __rfcomm_dlc_close+0x1b6/0x8a0 net/bluetooth/rfcomm/core.c:489
- rfcomm_dlc_close+0x1ea/0x240 net/bluetooth/rfcomm/core.c:520
- __rfcomm_sock_close+0xac/0x260 net/bluetooth/rfcomm/sock.c:220
- rfcomm_sock_shutdown+0xe9/0x210 net/bluetooth/rfcomm/sock.c:931
- rfcomm_sock_release+0x5f/0x140 net/bluetooth/rfcomm/sock.c:951
- __sock_release+0xcd/0x280 net/socket.c:649
- sock_close+0x18/0x20 net/socket.c:1314
- __fput+0x288/0x920 fs/file_table.c:280
- task_work_run+0xdd/0x1a0 kernel/task_work.c:164
- exit_task_work include/linux/task_work.h:32 [inline]
- do_exit+0xbd4/0x2a60 kernel/exit.c:825
- do_group_exit+0x125/0x310 kernel/exit.c:922
- get_signal+0x47f/0x2160 kernel/signal.c:2808
- arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865
- handle_signal_work kernel/entry/common.c:148 [inline]
- exit_to_user_mode_loop kernel/entry/common.c:172 [inline]
- exit_to_user_mode_prepare+0x17d/0x290 kernel/entry/common.c:209
- __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
- syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
- do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
- entry_SYSCALL_64_after_hwframe+0x44/0xae
-
-Showing all locks held in the system:
-1 lock held by khungtaskd/1653:
- #0: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at:
- debug_show_all_locks+0x53/0x260 kernel/locking/lockdep.c:6446
-1 lock held by krfcommd/4781:
- #0: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
- rfcomm_process_sessions net/bluetooth/rfcomm/core.c:1979 [inline]
- #0: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
- rfcomm_run+0x2ed/0x4a20 net/bluetooth/rfcomm/core.c:2086
-2 locks held by in:imklog/8206:
- #0: ffff8880182ce5f0 (&f->f_pos_lock){+.+.}-{3:3}, at:
- __fdget_pos+0xe9/0x100 fs/file.c:974
- #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at:
- raw_spin_rq_lock_nested kernel/sched/core.c:460 [inline]
- #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock
- kernel/sched/sched.h:1307 [inline]
- #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at: rq_lock
- kernel/sched/sched.h:1610 [inline]
- #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at:
- __schedule+0x233/0x26f0 kernel/sched/core.c:5852
-4 locks held by syz-executor255/8499:
- #0: ffff888039a83690 (&sb->s_type->i_mutex_key#13){+.+.}-{3:3}, at:
- inode_lock include/linux/fs.h:774 [inline]
- #0: ffff888039a83690 (&sb->s_type->i_mutex_key#13){+.+.}-{3:3}, at:
- __sock_release+0x86/0x280 net/socket.c:648
- #1:
- ffff88802fa31120 (sk_lock-AF_BLUETOOTH-BTPROTO_RFCOMM){+.+.}-{0:0},
- at: lock_sock include/net/sock.h:1612 [inline]
- #1:
- ffff88802fa31120 (sk_lock-AF_BLUETOOTH-BTPROTO_RFCOMM){+.+.}-{0:0},
- at: rfcomm_sock_shutdown+0x54/0x210 net/bluetooth/rfcomm/sock.c:928
- #2: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
- rfcomm_dlc_close+0x34/0x240 net/bluetooth/rfcomm/core.c:507
- #3: ffff888141bd6d28 (&d->lock){+.+.}-{3:3}, at:
- __rfcomm_dlc_close+0x162/0x8a0 net/bluetooth/rfcomm/core.c:487
-==================================================================
-
-The task hangs because of a deadlock that occurs when lock_sock() is
-called in rfcomm_sk_state_change(). One such call stack is:
-
- rfcomm_sock_shutdown():
- lock_sock();
- __rfcomm_sock_close():
- rfcomm_dlc_close():
- __rfcomm_dlc_close():
- rfcomm_dlc_lock();
- rfcomm_sk_state_change():
- lock_sock();
-
-lock_sock() has to be called when the sk state is changed because the
-lock is not always held when rfcomm_sk_state_change() is
-called. However, besides the recursive deadlock, there is also an
-issue of a lock hierarchy inversion between rfcomm_dlc_lock() and
-lock_sock() if the socket is locked in rfcomm_sk_state_change().
-
-To avoid these issues, we can instead schedule the sk state change in
-the global workqueue. This is already the implicit assumption about
-how sk state changes happen. For example, in rfcomm_sock_shutdown(),
-the call to __rfcomm_sock_close() is followed by
-bt_sock_wait_state().
-
-Additionally, the call to rfcomm_sock_kill() inside
-rfcomm_sk_state_change() should be removed. The socket shouldn't be
-killed here because only rfcomm_sock_release() calls sock_orphan(),
-which it already follows up with a call to rfcomm_sock_kill().
-
-Fixes: b7ce436a5d79 ("Bluetooth: switch to lock_sock in RFCOMM")
-Link: https://syzkaller.appspot.com/bug?extid=7d51f807c81b190a127d [1]
-Reported-by: syzbot+7d51f807c81b190a127d@syzkaller.appspotmail.com
-Tested-by: syzbot+7d51f807c81b190a127d@syzkaller.appspotmail.com
-Signed-off-by: Desmond Cheong Zhi Xi <desmondcheongzx@gmail.com>
-Cc: Hillf Danton <hdanton@sina.com>
----
- include/net/bluetooth/rfcomm.h | 3 +++
- net/bluetooth/rfcomm/core.c | 2 ++
- net/bluetooth/rfcomm/sock.c | 34 ++++++++++++++++++++++------------
- 3 files changed, 27 insertions(+), 12 deletions(-)
-
-diff --git a/include/net/bluetooth/rfcomm.h b/include/net/bluetooth/rfcomm.h
-index 99d26879b02a53..a92799fc5e74d0 100644
---- a/include/net/bluetooth/rfcomm.h
-+++ b/include/net/bluetooth/rfcomm.h
-@@ -171,6 +171,7 @@ struct rfcomm_dlc {
- struct rfcomm_session *session;
- struct sk_buff_head tx_queue;
- struct timer_list timer;
-+ struct work_struct state_change_work;
-
- struct mutex lock;
- unsigned long state;
-@@ -186,6 +187,7 @@ struct rfcomm_dlc {
- u8 sec_level;
- u8 role_switch;
- u32 defer_setup;
-+ int err;
-
- uint mtu;
- uint cfc;
-@@ -310,6 +312,7 @@ struct rfcomm_pinfo {
- u8 role_switch;
- };
-
-+void __rfcomm_sk_state_change(struct work_struct *work);
- int rfcomm_init_sockets(void);
- void rfcomm_cleanup_sockets(void);
-
-diff --git a/net/bluetooth/rfcomm/core.c b/net/bluetooth/rfcomm/core.c
-index 7324764384b677..c6494e85cd68b2 100644
---- a/net/bluetooth/rfcomm/core.c
-+++ b/net/bluetooth/rfcomm/core.c
-@@ -289,6 +289,7 @@ static void rfcomm_dlc_clear_state(struct rfcomm_dlc *d)
- d->flags = 0;
- d->mscex = 0;
- d->sec_level = BT_SECURITY_LOW;
-+ d->err = 0;
- d->mtu = RFCOMM_DEFAULT_MTU;
- d->v24_sig = RFCOMM_V24_RTC | RFCOMM_V24_RTR | RFCOMM_V24_DV;
-
-@@ -306,6 +307,7 @@ struct rfcomm_dlc *rfcomm_dlc_alloc(gfp_t prio)
- timer_setup(&d->timer, rfcomm_dlc_timeout, 0);
-
- skb_queue_head_init(&d->tx_queue);
-+ INIT_WORK(&d->state_change_work, __rfcomm_sk_state_change);
- mutex_init(&d->lock);
- refcount_set(&d->refcnt, 1);
-
-diff --git a/net/bluetooth/rfcomm/sock.c b/net/bluetooth/rfcomm/sock.c
-index 4bf4ea6cbb5eee..4850dafbaa05fb 100644
---- a/net/bluetooth/rfcomm/sock.c
-+++ b/net/bluetooth/rfcomm/sock.c
-@@ -61,19 +61,22 @@ static void rfcomm_sk_data_ready(struct rfcomm_dlc *d, struct sk_buff *skb)
- rfcomm_dlc_throttle(d);
- }
-
--static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
-+void __rfcomm_sk_state_change(struct work_struct *work)
- {
-+ struct rfcomm_dlc *d = container_of(work, struct rfcomm_dlc,
-+ state_change_work);
- struct sock *sk = d->owner, *parent;
-
- if (!sk)
- return;
-
-- BT_DBG("dlc %p state %ld err %d", d, d->state, err);
--
- lock_sock(sk);
-+ rfcomm_dlc_lock(d);
-
-- if (err)
-- sk->sk_err = err;
-+ BT_DBG("dlc %p state %ld err %d", d, d->state, d->err);
-+
-+ if (d->err)
-+ sk->sk_err = d->err;
-
- sk->sk_state = d->state;
-
-@@ -91,15 +94,22 @@ static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
- sk->sk_state_change(sk);
- }
-
-+ rfcomm_dlc_unlock(d);
- release_sock(sk);
-+ sock_put(sk);
-+}
-
-- if (parent && sock_flag(sk, SOCK_ZAPPED)) {
-- /* We have to drop DLC lock here, otherwise
-- * rfcomm_sock_destruct() will dead lock. */
-- rfcomm_dlc_unlock(d);
-- rfcomm_sock_kill(sk);
-- rfcomm_dlc_lock(d);
-- }
-+static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
-+{
-+ struct sock *sk = d->owner;
-+
-+ if (!sk)
-+ return;
-+
-+ d->err = err;
-+ sock_hold(sk);
-+ if (!schedule_work(&d->state_change_work))
-+ sock_put(sk);
- }
-
- /* ---- Socket functions ---- */
diff --git a/fb23dad87a0bfb6fdfde3dc1d18104da631d050a.patch b/0103-soundwire_intel_Initialize_clock_stop_timeout.patch
index d7d2fdac6c70..4cbec78e10dd 100644
--- a/fb23dad87a0bfb6fdfde3dc1d18104da631d050a.patch
+++ b/0103-soundwire_intel_Initialize_clock_stop_timeout.patch
@@ -1,4 +1,4 @@
-From fb23dad87a0bfb6fdfde3dc1d18104da631d050a Mon Sep 17 00:00:00 2001
+From f4e799545c0fc46a5899853f60776adc8671776c Mon Sep 17 00:00:00 2001
From: Sjoerd Simons <sjoerd@collabora.com>
Date: Sat, 8 Oct 2022 21:57:51 +0200
Subject: [PATCH] soundwire: intel: Initialize clock stop timeout
@@ -27,9 +27,8 @@ index af6c1a93372d90..002bc26b525e87 100644
+++ b/drivers/soundwire/intel.c
@@ -1307,6 +1307,7 @@ static int intel_link_probe(struct auxiliary_device *auxdev,
cdns->msg_count = 0;
-
+
bus->link_id = auxdev->id;
+ bus->clk_stop_timeout = 1;
-
+
sdw_cdns_probe(cdns);
-
diff --git a/64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc.patch b/0104-drm_sched_add_DRM_SCHED_FENCE_DONT_PIPELINE_flag.patch
index 484056fc5592..3374b7ebac9e 100644
--- a/64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc.patch
+++ b/0104-drm_sched_add_DRM_SCHED_FENCE_DONT_PIPELINE_flag.patch
@@ -1,4 +1,4 @@
-From 64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc Mon Sep 17 00:00:00 2001
+ From 87336625589872206597baab173ae6014ddf1750 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
Date: Fri, 7 Oct 2022 09:51:13 +0200
Subject: [PATCH] drm/sched: add DRM_SCHED_FENCE_DONT_PIPELINE flag
@@ -22,12 +22,12 @@ index 6b25b2f4f5a308..6137537aaea4df 100644
+++ b/drivers/gpu/drm/scheduler/sched_entity.c
@@ -385,7 +385,8 @@ static bool drm_sched_entity_add_dependency_cb(struct drm_sched_entity *entity)
}
-
+
s_fence = to_drm_sched_fence(fence);
- if (s_fence && s_fence->sched == sched) {
+ if (s_fence && s_fence->sched == sched &&
+ !test_bit(DRM_SCHED_FENCE_DONT_PIPELINE, &fence->flags)) {
-
+
/*
* Fence is from the same scheduler, only need to wait for
diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
@@ -35,9 +35,9 @@ index addb135eeea622..289a33e8063978 100644
--- a/include/drm/gpu_scheduler.h
+++ b/include/drm/gpu_scheduler.h
@@ -32,6 +32,15 @@
-
+
#define MAX_WAIT_SCHED_ENTITY_Q_EMPTY msecs_to_jiffies(1000)
-
+
+/**
+ * DRM_SCHED_FENCE_DONT_PIPELINE - Prefent dependency pipelining
+ *
@@ -48,5 +48,5 @@ index addb135eeea622..289a33e8063978 100644
+#define DRM_SCHED_FENCE_DONT_PIPELINE DMA_FENCE_FLAG_USER_BITS
+
struct drm_gem_object;
-
+
struct drm_gpu_scheduler;
diff --git a/a24b69f369c6c55be8ce40427feb4e127afae129.patch b/0105-drm_amdgpu_use_DRM_SCHED_FENCE_DONT_PIPELINE_for_VM_updates.patch
index d3ea43144350..85a53aad1b2f 100644
--- a/a24b69f369c6c55be8ce40427feb4e127afae129.patch
+++ b/0105-drm_amdgpu_use_DRM_SCHED_FENCE_DONT_PIPELINE_for_VM_updates.patch
@@ -1,4 +1,4 @@
-From a24b69f369c6c55be8ce40427feb4e127afae129 Mon Sep 17 00:00:00 2001
+From 2b078fa1fdcbd43a042ff49ad70f6ab2a22dffb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
Date: Fri, 7 Oct 2022 10:59:58 +0200
Subject: [PATCH] drm/amdgpu: use DRM_SCHED_FENCE_DONT_PIPELINE for VM updates
@@ -21,7 +21,7 @@ index 718db7d98e5a30..25ad3c7fa24bea 100644
@@ -115,8 +115,15 @@ static int amdgpu_vm_sdma_commit(struct amdgpu_vm_update_params *p,
amdgpu_bo_fence(p->vm->root.bo, f, true);
}
-
+
- if (fence && !p->immediate)
+ if (fence && !p->immediate) {
+ /*
@@ -34,4 +34,3 @@ index 718db7d98e5a30..25ad3c7fa24bea 100644
+ }
dma_fence_put(f);
return 0;
-
diff --git a/6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch b/6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch
deleted file mode 100644
index bb2b445a489b..000000000000
--- a/6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 6df3912f64cea68409b08d282ffbccf0af7f8d8e Mon Sep 17 00:00:00 2001
-From: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Date: Mon, 17 Oct 2022 13:15:21 -0700
-Subject: [PATCH] drm/amdgpu: Fix for BO move issue
-
-If there are no blocks to compare then exit
-the loop.
-
-Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-index 794062ab57fca4..9e6c23266a1a0f 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-@@ -439,6 +439,9 @@ static bool amdgpu_mem_visible(struct amdgpu_device *adev,
- while (cursor.remaining) {
- amdgpu_res_next(&cursor, cursor.size);
-
-+ if (!cursor.remaining)
-+ break;
-+
- /* ttm_resource_ioremap only supports contiguous memory */
- if (end != cursor.start)
- return false;
diff --git a/785699dbc7041b99e0027bff27ffe17eba202e96.patch b/785699dbc7041b99e0027bff27ffe17eba202e96.patch
deleted file mode 100644
index f11da7b31d53..000000000000
--- a/785699dbc7041b99e0027bff27ffe17eba202e96.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 785699dbc7041b99e0027bff27ffe17eba202e96 Mon Sep 17 00:00:00 2001
-From: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Date: Tue, 4 Oct 2022 07:33:39 -0700
-Subject: [PATCH] drm/amdgpu: Fix VRAM BO swap issue
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-DRM buddy manager allocates the contiguous memory requests in
-a single block or multiple blocks. So for the ttm move operation
-(incase of low vram memory) we should consider all the blocks to
-compute the total memory size which compared with the struct
-ttm_resource num_pages in order to verify that the blocks are
-contiguous for the eviction process.
-
-v2: Added a Fixes tag
-v3: Rewrite the code to save a bit of calculations and
- variables (Christian)
-
-Fixes: c9cad937c0c5 ("drm/amdgpu: add drm buddy support to amdgpu")
-Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Reviewed-by: Christian König <christian.koenig@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-index 134575a3893c53..794062ab57fca4 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
-@@ -424,8 +424,9 @@ static int amdgpu_move_blit(struct ttm_buffer_object *bo,
- static bool amdgpu_mem_visible(struct amdgpu_device *adev,
- struct ttm_resource *mem)
- {
-- uint64_t mem_size = (u64)mem->num_pages << PAGE_SHIFT;
-+ u64 mem_size = (u64)mem->num_pages << PAGE_SHIFT;
- struct amdgpu_res_cursor cursor;
-+ u64 end;
-
- if (mem->mem_type == TTM_PL_SYSTEM ||
- mem->mem_type == TTM_PL_TT)
-@@ -434,12 +435,18 @@ static bool amdgpu_mem_visible(struct amdgpu_device *adev,
- return false;
-
- amdgpu_res_first(mem, 0, mem_size, &cursor);
-+ end = cursor.start + cursor.size;
-+ while (cursor.remaining) {
-+ amdgpu_res_next(&cursor, cursor.size);
-
-- /* ttm_resource_ioremap only supports contiguous memory */
-- if (cursor.size != mem_size)
-- return false;
-+ /* ttm_resource_ioremap only supports contiguous memory */
-+ if (end != cursor.start)
-+ return false;
-+
-+ end = cursor.start + cursor.size;
-+ }
-
-- return cursor.start + cursor.size <= adev->gmc.visible_vram_size;
-+ return end <= adev->gmc.visible_vram_size;
- }
-
- /*
diff --git a/PKGBUILD b/PKGBUILD
index 0d99c2562dfd..5ed33fe052ba 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,8 +12,8 @@ pkgbase=linux-jcore
pkgname=('linux-jcore' 'linux-jcore-headers')
_kernelname=-jcore
_hostname=jcore
-pkgver=6.0.6
-pkgrel=2
+pkgver=6.0.7
+pkgrel=1
pkgdesc="Kernel for Manjaro/Arch (ACS override patch include)"
arch=('x86_64')
url="https://www.kernel.org/"
@@ -27,12 +27,9 @@ source=("https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-$pkgver.tar.xz"
# ARCH Patches
'0101-ZEN_Add_sysctl_and_CONFIG_to_disallow_unprivileged_CLONE_NEWUSER.patch'
'0102-mm_vmscan_fix_extreme_overreclaim_and_swap_floods.patch'
- '0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch'
- 'fb23dad87a0bfb6fdfde3dc1d18104da631d050a.patch'
- '64ebb671ffc4cbfd548e4f1b4aeb98155fd386dc.patch'
- 'a24b69f369c6c55be8ce40427feb4e127afae129.patch'
- '785699dbc7041b99e0027bff27ffe17eba202e96.patch'
- '6df3912f64cea68409b08d282ffbccf0af7f8d8e.patch'
+ '0103-soundwire_intel_Initialize_clock_stop_timeout.patch'
+ '0104-drm_sched_add_DRM_SCHED_FENCE_DONT_PIPELINE_flag.patch'
+ '0105-drm_amdgpu_use_DRM_SCHED_FENCE_DONT_PIPELINE_for_VM_updates.patch'
# MANJARO Patches
# Bootsplash
@@ -54,16 +51,13 @@ source=("https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-$pkgver.tar.xz"
'0413-bootsplash.gitpatch'
# ACS override patch
'0999-acs.gitpatch')
-sha256sums=('864b05af2d869ba73d61a9c5959e4531a141ab2bd7b217483671f625f9747faa'
- '00b243b5be38077d073074099b46afcd4b9b0e63a54f490284c4d9c522ac3fc4'
+sha256sums=('67dacc2b78605a56e997f4c08d009be87c98ec66f1870220226c8b3cc676590f'
+ 'd9f5c5959ea6fc4601a1fd78c00982bb5bf873e904f140559ccb7359097ee194'
'05f04019d4a2ee072238c32860fa80d673687d84d78ef436ae9332b6fb788467'
'a75d2a2322c8cd99a6dc9945424fd9006e7a8f9d2793c0ae97ef931f2d54b9a5'
- 'a8a2d8b402b2877df1a949a106c634b6c366dd33b954c4b735ce1d3778214169'
- '6c84ff721c3ef0561f532c92cf0096d9adb7e12414bc1fc80b0824e47a863213'
- '86ab8a9821ea7300ff7f7c9d64cf54f6662ae4609097fff3795e548f3181d603'
- '664890dff8196b0ddf14c6c698dedc4b14251e353bfae2b4fd68e3c487ab3dd6'
- 'ad6fb3d449ded539840cc2dc5e12ecbc9563a68b3054bc93dd302f4ab58d7ca2'
- '232ed297c6535e90f51e02449de236297bb2df6d3d159a8cfb78eccb08e68dbe'
+ '5a72a4163937bc588d6a8ed6320e610f6512376b7aa20c4ada5c0ae09cdcd525'
+ '8ecbe2fdd40c1accc4e7ccd687c319938c18f5adf056ff314c7702775347adf9'
+ '11b7c141c218d6c026a29aed5ba3c3322343ae677155a6dccf622c151eb1b1aa'
'2b11905b63b05b25807dd64757c779da74dd4c37e36d3f7a46485b1ee5a9d326'
'94a8538251ad148f1025cc3de446ce64f73dc32b01815426fb159c722e8fa5bc'
'8e5c147591d14300a59ed8354a9d0746cf78650256558b45f964ca76eaed9a9f'
diff --git a/config b/config
index 96d7c3084123..52bc8933422e 100644
--- a/config
+++ b/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 6.0.6-2 Kernel Configuration
+# Linux/x86 6.0.7-1 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 12.2.0"
CONFIG_CC_IS_GCC=y