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

CHECK: Alignment should match open parenthesis
#112: FILE: drivers/connector/cn_hash.c:41:
+	hash_for_each_safe(hdev->uexit_pid_htable, bucket, tmp,
+			hnode, uexit_pid_hlist) {

CHECK: Alignment should match open parenthesis
#115: FILE: drivers/connector/cn_hash.c:44:
+		pr_debug("%s: Freeing node for pid %d\n",
+				__func__, hnode->pid);

CHECK: Alignment should match open parenthesis
#130: FILE: drivers/connector/cn_hash.c:59:
+		pr_info("Waiting for %s to become free: refcnt=%d\n",
+				hdev->name, atomic_read(&hdev->hrefcnt));

CHECK: Alignment should match open parenthesis
#164: FILE: drivers/connector/cn_hash.c:93:
+		pr_err("%s: cn_hash_alloc_elem() returned NULL pid %d\n",
+				__func__, pid);

CHECK: Alignment should match open parenthesis
#173: FILE: drivers/connector/cn_hash.c:102:
+	hash_for_each_possible(hdev->uexit_pid_htable,
+				hnode, uexit_pid_hlist, pid) {

CHECK: Alignment should match open parenthesis
#178: FILE: drivers/connector/cn_hash.c:107:
+			pr_debug("%s: pid %d already exists in hash table\n",
+				__func__, pid);

CHECK: Alignment should match open parenthesis
#189: FILE: drivers/connector/cn_hash.c:118:
+	pr_debug("%s: After hash_add of pid %d elem %p hrefcnt %d\n",
+			__func__, pid, elem, atomic_read(&hdev->hrefcnt));

CHECK: Alignment should match open parenthesis
#201: FILE: drivers/connector/cn_hash.c:130:
+	hash_for_each_possible_safe(hdev->uexit_pid_htable,
+				hnode, tmp, uexit_pid_hlist, pid) {

CHECK: Alignment should match open parenthesis
#209: FILE: drivers/connector/cn_hash.c:138:
+			pr_debug("%s: After hash_del of pid %d, found exit code %u hrefcnt %d\n",
+					__func__, pid, excde,

CHECK: Alignment should match open parenthesis
#217: FILE: drivers/connector/cn_hash.c:146:
+	pr_err("%s: pid %d not found in hash table\n",
+			__func__, pid);

CHECK: Alignment should match open parenthesis
#228: FILE: drivers/connector/cn_hash.c:157:
+	hash_for_each_possible(hdev->uexit_pid_htable,
+				hnode, uexit_pid_hlist, pid) {

CHECK: Alignment should match open parenthesis
#233: FILE: drivers/connector/cn_hash.c:162:
+			pr_debug("%s: Found exit code %u for pid %d\n",
+					__func__, excde, pid);

CHECK: Alignment should match open parenthesis
#240: FILE: drivers/connector/cn_hash.c:169:
+	pr_debug("%s: pid %d not found in hash table\n",
+			__func__, pid);

CHECK: Alignment should match open parenthesis
#294: FILE: drivers/connector/cn_proc.c:354:
+			pr_debug("%s: err %d returning task's exit code %u\n",
+					uexit_code, __func__,

CHECK: Alignment should match open parenthesis
#300: FILE: drivers/connector/cn_proc.c:360:
+			pr_debug("%s: Reset PF_EXIT_NOTIFY & retrieved exit code %u from hash table, pid %d\n",
+					__func__,

CHECK: Alignment should match open parenthesis
#331: FILE: drivers/connector/cn_proc.c:452:
+			pr_debug("%s: Received PROC_CN_MCAST_NOTIFY, pid %d\n",
+					__func__, current->pid);

WARNING: Possible unnecessary 'out of memory' message
#343: FILE: drivers/connector/cn_proc.c:476:
 			if (sk->sk_user_data == NULL) {
+				pr_err("%s: ENOMEM for sk_user_data, pid %d\n",

CHECK: Alignment should match open parenthesis
#344: FILE: drivers/connector/cn_proc.c:477:
+				pr_err("%s: ENOMEM for sk_user_data, pid %d\n",
+						__func__, current->pid);

CHECK: Alignment should match open parenthesis
#353: FILE: drivers/connector/cn_proc.c:489:
+		pr_debug("%s: sk: %p pid: %d event_type: %x\n",
+				__func__, sk, current->pid, ev_type);

CHECK: Unnecessary parentheses around 'prev_mc_op != PROC_CN_MCAST_LISTEN'
#360: FILE: drivers/connector/cn_proc.c:495:
+		if (initial || (prev_mc_op != PROC_CN_MCAST_LISTEN)) {

CHECK: Alignment should match open parenthesis
#363: FILE: drivers/connector/cn_proc.c:498:
+			pr_debug("%s: PROC_CN_MCAST_LISTEN pid %d: Incremented listeners to %d\n",
+					__func__, current->pid,

CHECK: Unnecessary parentheses around 'prev_mc_op != PROC_CN_MCAST_IGNORE'
#369: FILE: drivers/connector/cn_proc.c:503:
+		if (!initial && (prev_mc_op != PROC_CN_MCAST_IGNORE)) {

CHECK: Alignment should match open parenthesis
#372: FILE: drivers/connector/cn_proc.c:506:
+			pr_debug("%s: PROC_CN_MCAST_IGNORE pid %d: Decremented listeners to %d\n",
+					__func__, current->pid,

CHECK: Alignment should match open parenthesis
#445: FILE: drivers/connector/connector.c:332:
+		pr_err("%s: netlink_kernel_create failed, connector not initialized\n",
+				__func__);

CHECK: Alignment should match open parenthesis
#452: FILE: drivers/connector/connector.c:339:
+		pr_err("%s: Allocation of dev->cbdev failed, connector not initialized\n",
+				__func__);

CHECK: Alignment should match open parenthesis
#460: FILE: drivers/connector/connector.c:347:
+		pr_err("%s: Allocation of dev->hdev failed, connector not initialized\n",
+				__func__);

CHECK: struct mutex definition without comment
#505: FILE: include/linux/connector.h:59:
+	struct mutex uexit_hash_lock;

CHECK: Alignment should match open parenthesis
#527: FILE: include/linux/connector.h:159:
+struct uexit_pid_hnode *cn_hash_find_pid_node(struct cn_hash_dev *hdev,
+						pid_t pid);

WARNING: line length of 140 exceeds 80 columns
#549: FILE: include/linux/sched.h:1676:
+#define PF_EXIT_NOTIFY		0x00010000	/* This thread has sent an exit value to be sent as a notification to listening processes */

total: 0 errors, 3 warnings, 27 checks, 478 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
      mechanically convert to the typical style using --fix or --fix-inplace.

Commit 1584466ff730 ("connector/cn_proc: Add hash table for threads") has style problems, please review.

NOTE: Ignored message types: ALLOC_SIZEOF_STRUCT BAD_REPORTED_BY_LINK CAMELCASE COMMIT_LOG_LONG_LINE GIT_COMMIT_ID MACRO_ARG_REUSE NO_AUTHOR_SIGN_OFF

NOTE: If any of the errors are false positives, please report
      them to the maintainer, see CHECKPATCH in MAINTAINERS.
total: 0 errors, 3 warnings, 27 checks, 478 lines checked