[PATCH 00/27] DEPT 2.4 test run for i915
Gwan-gyeong Mun
gwan-gyeong.mun at intel.com
Tue Jul 4 09:32:18 UTC 2023
This is a series to test the detection of deadlock that can occur in i915
by applying DEPT implementation [1][2] for Linux 6.4.
[1] https://lore.kernel.org/dri-devel/20230703094752.79269-1-byungchul@sk.com/
[2] Message-ID: <20230703094752.79269-1-byungchul at sk.com>
Byungchul Park (25):
llist: Move llist_{head,node} definition to types.h
dept: Implement Dept(Dependency Tracker)
dept: Add single event dependency tracker APIs
dept: Add lock dependency tracker APIs
dept: Tie to Lockdep and IRQ tracing
dept: Add proc knobs to show stats and dependency graph
dept: Apply sdt_might_sleep_{start,end}() to
wait_for_completion()/complete()
dept: Apply sdt_might_sleep_{start,end}() to PG_{locked,writeback}
wait
dept: Apply sdt_might_sleep_{start,end}() to swait
dept: Apply sdt_might_sleep_{start,end}() to waitqueue wait
dept: Apply sdt_might_sleep_{start,end}() to hashed-waitqueue wait
dept: Distinguish each syscall context from another
dept: Distinguish each work from another
dept: Add a mechanism to refill the internal memory pools on running
out
locking/lockdep, cpu/hotplus: Use a weaker annotation in AP thread
dept: Apply sdt_might_sleep_{start,end}() to dma fence wait
dept: Track timeout waits separately with a new Kconfig
dept: Apply timeout consideration to wait_for_completion()/complete()
dept: Apply timeout consideration to swait
dept: Apply timeout consideration to waitqueue wait
dept: Apply timeout consideration to hashed-waitqueue wait
dept: Apply timeout consideration to dma fence wait
dept: Record the latest one out of consecutive waits of the same class
dept: Make Dept able to work with an external wgen
dept: Track the potential waits of PG_{locked,writeback}
Gwan-gyeong Mun (2):
HAX: dept: Enable Dept by default
HAX: dept: Increase DEPT_MAX_WAIT_HIST / DEPT_MAX_ECXT_HELD to track
more
arch/arm64/kernel/syscall.c | 2 +
arch/x86/entry/common.c | 4 +
drivers/dma-buf/dma-fence.c | 5 +
include/linux/completion.h | 30 +-
include/linux/dept.h | 614 ++++++
include/linux/dept_ldt.h | 77 +
include/linux/dept_sdt.h | 66 +
include/linux/hardirq.h | 3 +
include/linux/irqflags.h | 22 +-
include/linux/llist.h | 8 -
include/linux/local_lock_internal.h | 1 +
include/linux/lockdep.h | 102 +-
include/linux/lockdep_types.h | 3 +
include/linux/mm_types.h | 3 +
include/linux/mutex.h | 1 +
include/linux/page-flags.h | 112 +-
include/linux/pagemap.h | 7 +-
include/linux/percpu-rwsem.h | 2 +-
include/linux/rtmutex.h | 1 +
include/linux/rwlock_types.h | 1 +
include/linux/rwsem.h | 1 +
include/linux/sched.h | 3 +
include/linux/seqlock.h | 2 +-
include/linux/spinlock_types_raw.h | 3 +
include/linux/srcu.h | 2 +-
include/linux/swait.h | 3 +
include/linux/types.h | 8 +
include/linux/wait.h | 3 +
include/linux/wait_bit.h | 3 +
init/init_task.c | 2 +
init/main.c | 2 +
kernel/Makefile | 1 +
kernel/cpu.c | 2 +-
kernel/dependency/Makefile | 4 +
kernel/dependency/dept.c | 3167 +++++++++++++++++++++++++++
kernel/dependency/dept_hash.h | 10 +
kernel/dependency/dept_internal.h | 26 +
kernel/dependency/dept_object.h | 13 +
kernel/dependency/dept_proc.c | 93 +
kernel/exit.c | 1 +
kernel/fork.c | 2 +
kernel/locking/lockdep.c | 23 +
kernel/module/main.c | 4 +
kernel/sched/completion.c | 2 +-
kernel/sched/core.c | 9 +
kernel/workqueue.c | 3 +
lib/Kconfig.debug | 37 +
lib/locking-selftest.c | 2 +
mm/filemap.c | 18 +
mm/mm_init.c | 3 +
50 files changed, 4461 insertions(+), 55 deletions(-)
create mode 100644 include/linux/dept.h
create mode 100644 include/linux/dept_ldt.h
create mode 100644 include/linux/dept_sdt.h
create mode 100644 kernel/dependency/Makefile
create mode 100644 kernel/dependency/dept.c
create mode 100644 kernel/dependency/dept_hash.h
create mode 100644 kernel/dependency/dept_internal.h
create mode 100644 kernel/dependency/dept_object.h
create mode 100644 kernel/dependency/dept_proc.c
--
2.40.0
More information about the Intel-gfx-trybot
mailing list