[PATCH 00/25] DEPT 2.0 test run for i915
Gwan-gyeong Mun
gwan-gyeong.mun at intel.com
Tue Jan 3 11:15:50 UTC 2023
This is a series to test the detection of deadlock that can occur in i915
by applying DEPT implementation [1] for Linux 6.2-rc2.
[1] https://github.com/lgebyungchulpark/linux-dept/tree/dept2.0_on_v6.2-rc2
Byungchul Park (23):
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_strong() to
wait_for_completion()/complete()
dept: Apply sdt_might_sleep_strong() to PG_{locked,writeback} wait
dept: Apply sdt_might_sleep_weak() to swait
dept: Apply sdt_might_sleep_weak() to waitqueue wait
dept: Apply sdt_might_sleep_weak() 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_strong() 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
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 | 11 +
include/linux/completion.h | 102 +-
include/linux/dept.h | 600 ++++++
include/linux/dept_ldt.h | 77 +
include/linux/dept_sdt.h | 101 +
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 | 108 +-
include/linux/lockdep_types.h | 3 +
include/linux/mutex.h | 1 +
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 | 6 +
include/linux/types.h | 8 +
include/linux/wait.h | 6 +
include/linux/wait_bit.h | 6 +
init/init_task.c | 2 +
init/main.c | 2 +
kernel/Makefile | 1 +
kernel/cpu.c | 2 +-
kernel/dependency/Makefile | 4 +
kernel/dependency/dept.c | 3120 +++++++++++++++++++++++++++
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 | 2 +
kernel/sched/completion.c | 60 +-
kernel/sched/core.c | 9 +
kernel/workqueue.c | 3 +
lib/Kconfig.debug | 37 +
lib/locking-selftest.c | 2 +
mm/filemap.c | 11 +
46 files changed, 4432 insertions(+), 75 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.37.1
More information about the Intel-gfx-trybot
mailing list