[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for attempts at catching mmu_notifer deadlocks

Patchwork patchwork at emeril.freedesktop.org
Thu Oct 25 15:56:47 UTC 2018


== Series Details ==

Series: attempts at catching mmu_notifer deadlocks
URL   : https://patchwork.freedesktop.org/series/51522/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
13ea12ad517b locking/lockdep: restore cross-release checks
-:8: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 527187d28569 ("locking/lockdep: Remove cross-release leftovers")'
#8: 
commit 527187d28569e39c5d489d6306d3b79605cf85a6

-:14: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit dba04eb76df9 ("locking/Documentation: Remove stale crossrelease_fullstack parameter")'
#14: 
commit dba04eb76df982703fefc021a4d278347b6176a9

-:20: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit e966eaeeb623 ("locking/lockdep: Remove the cross-release locking checks")'
#20: 
commit e966eaeeb623f09975ef362c2866fae6f86844f9

-:43: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#43: 
new file mode 100644

-:619: WARNING:TYPO_SPELLING: 'prefered' may be misspelled - perhaps 'preferred'?
#619: FILE: Documentation/locking/crossrelease.txt:572:
+deadlock or its possibility sooner. So the former way would be prefered

-:791: WARNING:TYPO_SPELLING: 'implmentation' may be misspelled - perhaps 'implementation'?
#791: FILE: Documentation/locking/crossrelease.txt:744:
+like how lockdep handles held_locks. Lockless implmentation is important

-:814: WARNING:TYPO_SPELLING: 'occured' may be misspelled - perhaps 'occurred'?
#814: FILE: Documentation/locking/crossrelease.txt:767:
+that it has not occured yet, lockdep should consider all possible

-:961: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'x' - possible side-effects?
#961: FILE: include/linux/completion.h:53:
+#define init_completion_map(x, m)					\
+do {									\
+	lockdep_init_map_crosslock((struct lockdep_map *)&(x)->map,	\
+			(m)->name, (m)->key, 0);				\
+	__init_completion(x);						\
+} while (0)

-:961: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'm' - possible side-effects?
#961: FILE: include/linux/completion.h:53:
+#define init_completion_map(x, m)					\
+do {									\
+	lockdep_init_map_crosslock((struct lockdep_map *)&(x)->map,	\
+			(m)->name, (m)->key, 0);				\
+	__init_completion(x);						\
+} while (0)

-:968: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'x' - possible side-effects?
#968: FILE: include/linux/completion.h:60:
+#define init_completion(x)						\
+do {									\
+	static struct lock_class_key __key;				\
+	lockdep_init_map_crosslock((struct lockdep_map *)&(x)->map,	\
+			"(completion)" #x,				\
+			&__key, 0);					\
+	__init_completion(x);						\
+} while (0)

-:985: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'work' - possible side-effects?
#985: FILE: include/linux/completion.h:77:
+#define COMPLETION_INITIALIZER(work) \
+	{ 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait), \
+	STATIC_CROSS_LOCKDEP_MAP_INIT("(completion)" #work, &(work)) }

-:1083: WARNING:TYPO_SPELLING: 'Seperate' may be misspelled - perhaps 'Separate'?
#1083: FILE: include/linux/lockdep.h:310:
+	 * Seperate stack_trace data. This will be used at commit step.

-:1089: WARNING:TYPO_SPELLING: 'Seperate' may be misspelled - perhaps 'Separate'?
#1089: FILE: include/linux/lockdep.h:316:
+	 * Seperate hlock instance. This will be used at commit step.

-:1117: WARNING:TYPO_SPELLING: 'Seperate' may be misspelled - perhaps 'Separate'?
#1117: FILE: include/linux/lockdep.h:344:
+	 * Seperate hlock instance. This will be used at commit step.

-:1140: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1140: FILE: include/linux/lockdep.h:561:
+extern void lockdep_init_map_crosslock(struct lockdep_map *lock,

-:1144: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1144: FILE: include/linux/lockdep.h:565:
+extern void lock_commit_crosslock(struct lockdep_map *lock);

-:1164: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1164: FILE: include/linux/lockdep.h:585:
+extern void crossrelease_hist_start(enum xhlock_context_t c);

-:1165: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1165: FILE: include/linux/lockdep.h:586:
+extern void crossrelease_hist_end(enum xhlock_context_t c);

-:1166: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1166: FILE: include/linux/lockdep.h:587:
+extern void lockdep_invariant_state(bool force);

-:1167: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1167: FILE: include/linux/lockdep.h:588:
+extern void lockdep_init_task(struct task_struct *task);

-:1168: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#1168: FILE: include/linux/lockdep.h:589:
+extern void lockdep_free_task(struct task_struct *task);

-:1283: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1283: FILE: kernel/locking/lockdep.c:1158:
+		printk(" Possible unsafe locking scenario by crosslock:\n\n");

-:1284: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1284: FILE: kernel/locking/lockdep.c:1159:
+		printk("       CPU0                    CPU1\n");

-:1285: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1285: FILE: kernel/locking/lockdep.c:1160:
+		printk("       ----                    ----\n");

-:1286: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1286: FILE: kernel/locking/lockdep.c:1161:
+		printk("  lock(");

-:1288: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1288: FILE: kernel/locking/lockdep.c:1163:
+		printk(KERN_CONT ");\n");

-:1288: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1288: FILE: kernel/locking/lockdep.c:1163:
+		printk(KERN_CONT ");\n");

-:1289: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1289: FILE: kernel/locking/lockdep.c:1164:
+		printk("  lock(");

-:1291: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1291: FILE: kernel/locking/lockdep.c:1166:
+		printk(KERN_CONT ");\n");

-:1291: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1291: FILE: kernel/locking/lockdep.c:1166:
+		printk(KERN_CONT ");\n");

-:1292: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1292: FILE: kernel/locking/lockdep.c:1167:
+		printk("                               lock(");

-:1294: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1294: FILE: kernel/locking/lockdep.c:1169:
+		printk(KERN_CONT ");\n");

-:1294: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1294: FILE: kernel/locking/lockdep.c:1169:
+		printk(KERN_CONT ");\n");

-:1295: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1295: FILE: kernel/locking/lockdep.c:1170:
+		printk("                               unlock(");

-:1297: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1297: FILE: kernel/locking/lockdep.c:1172:
+		printk(KERN_CONT ");\n");

-:1297: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1297: FILE: kernel/locking/lockdep.c:1172:
+		printk(KERN_CONT ");\n");

-:1298: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1298: FILE: kernel/locking/lockdep.c:1173:
+		printk("\n *** DEADLOCK ***\n\n");

-:1300: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1300: FILE: kernel/locking/lockdep.c:1175:
+		printk(" Possible unsafe locking scenario:\n\n");

-:1301: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1301: FILE: kernel/locking/lockdep.c:1176:
+		printk("       CPU0                    CPU1\n");

-:1302: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1302: FILE: kernel/locking/lockdep.c:1177:
+		printk("       ----                    ----\n");

-:1303: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1303: FILE: kernel/locking/lockdep.c:1178:
+		printk("  lock(");

-:1305: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1305: FILE: kernel/locking/lockdep.c:1180:
+		printk(KERN_CONT ");\n");

-:1305: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1305: FILE: kernel/locking/lockdep.c:1180:
+		printk(KERN_CONT ");\n");

-:1306: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1306: FILE: kernel/locking/lockdep.c:1181:
+		printk("                               lock(");

-:1308: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1308: FILE: kernel/locking/lockdep.c:1183:
+		printk(KERN_CONT ");\n");

-:1308: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1308: FILE: kernel/locking/lockdep.c:1183:
+		printk(KERN_CONT ");\n");

-:1309: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1309: FILE: kernel/locking/lockdep.c:1184:
+		printk("                               lock(");

-:1311: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1311: FILE: kernel/locking/lockdep.c:1186:
+		printk(KERN_CONT ");\n");

-:1311: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1311: FILE: kernel/locking/lockdep.c:1186:
+		printk(KERN_CONT ");\n");

-:1312: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1312: FILE: kernel/locking/lockdep.c:1187:
+		printk("  lock(");

-:1314: WARNING:PREFER_PR_LEVEL: Prefer [subsystem eg: netdev]_cont([subsystem]dev, ... then dev_cont(dev, ... then pr_cont(...  to printk(KERN_CONT ...
#1314: FILE: kernel/locking/lockdep.c:1189:
+		printk(KERN_CONT ");\n");

-:1314: WARNING:LOGGING_CONTINUATION: Avoid logging continuation uses where feasible
#1314: FILE: kernel/locking/lockdep.c:1189:
+		printk(KERN_CONT ");\n");

-:1315: WARNING:PRINTK_WITHOUT_KERN_LEVEL: printk() should include KERN_<LEVEL> facility level
#1315: FILE: kernel/locking/lockdep.c:1190:
+		printk("\n *** DEADLOCK ***\n\n");

-:1411: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#1411: FILE: kernel/locking/lockdep.c:3287:
+void lockdep_init_map_crosslock(struct lockdep_map *lock, const char *name,
+		      struct lock_class_key *key, int subclass)

-:1796: CHECK:SPACING: spaces preferred around that '-' (ctx:VxV)
#1796: FILE: kernel/locking/lockdep.c:4945:
+	if (nr_stack_trace_entries >= MAX_STACK_TRACE_ENTRIES-1) {
 	                                                     ^

-:1823: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#1823: FILE: kernel/locking/lockdep.c:4972:
+	if (!add_chain_cache_classes(xid, pid, xhlock->hlock.irq_context,
+				chain_key))

-:1958: CHECK:ALLOC_SIZEOF_STRUCT: Prefer kzalloc(sizeof(*task->xhlocks)...) over kzalloc(sizeof(struct hist_lock)...)
#1958: FILE: kernel/locking/lockdep.c:5107:
+	task->xhlocks = kzalloc(sizeof(struct hist_lock) * MAX_XHLOCKS_NR,

-:1966: WARNING:TYPO_SPELLING: 'Diable' may be misspelled - perhaps 'Disable'?
#1966: FILE: kernel/locking/lockdep.c:5115:
+		/* Diable crossrelease for current */

-:2038: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 3 errors, 41 warnings, 15 checks, 1947 lines checked
2ce40a1c1f3e kthread: finer-grained lockdep/cross-release completion
-:47: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#47: FILE: include/linux/kthread.h:11:
+struct task_struct *_kthread_create_on_node(int (*threadfn)(void *data),
 					   void *data,

-:68: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#68: FILE: include/linux/kthread.h:39:
+struct task_struct *_kthread_create_on_cpu(int (*threadfn)(void *data),
 					  void *data,

-:106: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#106: FILE: include/linux/kthread.h:206:
+_kthread_create_worker_on_cpu(int cpu, unsigned int flags,
+		       struct lock_class_key *exited_key,

-:137: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#137: FILE: kernel/kthread.c:234:
+	lockdep_init_map_crosslock(&self->exited.map.map,
+			"(kthread completion)->exited",

-:137: WARNING:EMBEDDED_FUNCTION_NAME: Prefer using '"%s...", __func__' to using 'kthread', this function's name, in a string
#137: FILE: kernel/kthread.c:234:
+			"(kthread completion)->exited",

-:141: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#141: FILE: kernel/kthread.c:238:
+	lockdep_init_map_crosslock(&self->parked.map.map,
+			"(kthread completion)->parked",

-:141: WARNING:EMBEDDED_FUNCTION_NAME: Prefer using '"%s...", __func__' to using 'kthread', this function's name, in a string
#141: FILE: kernel/kthread.c:238:
+			"(kthread completion)->parked",

-:207: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#207: FILE: kernel/kthread.c:454:
+struct task_struct *_kthread_create_on_cpu(int (*threadfn)(void *data),
 					  void *data, unsigned int cpu,

-:295: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 0 errors, 3 warnings, 6 checks, 240 lines checked
61785e43c2dc lockdep: Remove GFP_NOLOCKDEP annotation
-:6: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 7e7844226f10 ("lockdep: allow to disable reclaim lockup detection")'
#6: 
This was originally added in 7e7844226f10 ("lockdep: allow to disable

-:69: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 1 errors, 1 warnings, 0 checks, 32 lines checked
cde527c93a7e mm: Check if mmut notifier callbacks are allowed to fail
-:19: ERROR:SPACING: space required after that ',' (ctx:VxV)
#19: FILE: mm/mmu_notifier.c:193:
+				WARN(blockable,"%pS callback failure not allowed\n",
 				              ^

-:23: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 1 errors, 1 warnings, 0 checks, 8 lines checked
39f75ea012b8 mm, notifier: Catch sleeping/blocking for !blockable
-:30: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 0 errors, 1 warnings, 0 checks, 14 lines checked
ec2c4fd67467 mm, notifier: Add a lockdep map for invalidate_range_start
-:73: WARNING:NO_AUTHOR_SIGN_OFF: Missing Signed-off-by: line by nominal patch author 'Daniel Vetter <daniel.vetter at ffwll.ch>'

total: 0 errors, 1 warnings, 0 checks, 34 lines checked



More information about the Intel-gfx mailing list