Re: [PATCH 00/21] liblockdep fixes for v4.12

From: Ingo Molnar
Date: Fri May 26 2017 - 02:53:01 EST



* Levin, Alexander (Sasha Levin) <alexander.levin@xxxxxxxxxxx> wrote:

> MAINTAINERS | 2 +-
> tools/Makefile | 8 +++--
> tools/include/linux/bitops.h | 10 ++++++
> tools/include/linux/err.h | 5 +++
> tools/include/linux/jhash.h | 175 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> tools/include/linux/sched/clock.h | 0
> tools/include/linux/sched/mm.h | 0
> tools/include/linux/sched/task.h | 0
> tools/include/linux/unaligned/packed_struct.h | 46 +++++++++++++++++++++++++++
> tools/lib/lockdep/Makefile | 9 +++---
> tools/lib/lockdep/lockdep.c | 17 ++++++++++
> tools/lib/lockdep/preload.c | 3 +-
> tools/lib/lockdep/run_tests.sh | 8 ++---
> tools/lib/lockdep/uinclude/linux/bitops.h | 3 --
> tools/lib/lockdep/uinclude/linux/compiler.h | 2 ++
> tools/lib/lockdep/uinclude/linux/debug_locks.h | 2 +-
> tools/lib/lockdep/uinclude/linux/irqflags.h | 8 ++---
> tools/lib/lockdep/uinclude/linux/kallsyms.h | 3 +-
> tools/lib/lockdep/uinclude/linux/kernel.h | 20 ++++++++++--
> tools/lib/lockdep/uinclude/linux/lockdep.h | 26 ++++++++--------
> tools/lib/lockdep/uinclude/linux/module.h | 5 +++
> tools/lib/lockdep/uinclude/linux/rcu.h | 2 ++
> 22 files changed, 317 insertions(+), 37 deletions(-)
> create mode 100644 tools/include/linux/jhash.h
> create mode 100644 tools/include/linux/sched/clock.h
> create mode 100644 tools/include/linux/sched/mm.h
> create mode 100644 tools/include/linux/sched/task.h
> create mode 100644 tools/include/linux/unaligned/packed_struct.h
> delete mode 100644 tools/lib/lockdep/uinclude/linux/bitops.h

Yeah, so what needs to be fixed as well is for liblockdep to exclusively use
tools/include/ (and extend those headers where required).

perf already uses that method and it works well.

liblockdep already uses tools/include/ in part, but even after I apply all your
patches, there's still lib/lockdep/uinclude/ which appears to duplicate a number
of headers.

I did a quick check - for example WARN_ON() et al is duplicated in
tools/lib/lockdep/uinclude/linux/kernel.h.

Thanks,

Ingo