[PATCH v4 0/7] cross-release: Enhence performance and fix false positives

From: Byungchul Park
Date: Wed Oct 25 2017 - 01:11:38 EST


There are two things I didn't apply as Ingo suggested, since I didn't
understand his intention exactly:

1. Adding 'Analyzed-by' tag at the 2nd patch
2. Using a inline function instead #define at the 7th patch

Let me know if the above should still be applied.

Changes from v3
- Exclude a patch removing white space
- Enhance commit messages as Ingo suggested
- Re-design patches adding a boot param and a Kconfig allowing unwind
- Simplify a patch assigning lock classes to genhds as Ingo suggested
- Add proper tags in commit messages e.g. reported-by and analyzed-by

Changes from v2
- Combine 2 serises, fixing false positives and enhance performance
- Add Christoph Hellwig's patch simplifying submit_bio_wait() code
- Add 2 more 'init with lockdep map' macros for completionm
- Rename init_completion_with_map() to init_completion_map()

Changes from v1
- Fix kconfig description as Ingo suggested
- Fix commit message writing out CONFIG_ variable
- Introduce a new kernel parameter, crossrelease_fullstack
- Replace the number with the output of *perf*
- Separate a patch removing white space

Byungchul Park (6):
locking/lockdep: Add a boot parameter allowing unwind in cross-release
and disable it by default
locking/lockdep: Remove the BROKEN flag from
CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS
locking/lockdep: Introduce
CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK
completion: Add support for initializing completion with lockdep_map
workqueue: Remove unnecessary acquisitions wrt workqueue flush
block: Assign a lock_class per gendisk used for wait_for_completion()

Christoph Hellwig (1):
block: use DECLARE_COMPLETION_ONSTACK in submit_bio_wait

Documentation/admin-guide/kernel-parameters.txt | 3 +++
block/bio.c | 19 +++++--------------
block/genhd.c | 10 ++--------
include/linux/completion.h | 14 ++++++++++++++
include/linux/genhd.h | 24 ++++++++++++++++++++++--
include/linux/workqueue.h | 4 ++--
kernel/locking/lockdep.c | 23 +++++++++++++++++++++--
kernel/workqueue.c | 19 +++----------------
lib/Kconfig.debug | 19 +++++++++++++++++--
9 files changed, 89 insertions(+), 46 deletions(-)

--
1.9.1