Module Name:    src
Committed By:   riastradh
Date:           Sun Dec 19 01:03:22 UTC 2021

Modified Files:
        src/sys/external/bsd/drm2/dist/drm: drm_fb_helper.c drm_internal.h
        src/sys/external/bsd/drm2/drm: drm_module.c

Log Message:
Initialize kernel_fb_helper_lock in drm module load.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c
cvs rdiff -u -r1.8 -r1.9 src/sys/external/bsd/drm2/dist/drm/drm_internal.h
cvs rdiff -u -r1.20 -r1.21 src/sys/external/bsd/drm2/drm/drm_module.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c:1.18 src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c:1.19
--- src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c:1.18	Sun Dec 19 00:29:02 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_fb_helper.c	Sun Dec 19 01:03:22 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_fb_helper.c,v 1.18 2021/12/19 00:29:02 riastradh Exp $	*/
+/*	$NetBSD: drm_fb_helper.c,v 1.19 2021/12/19 01:03:22 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2006-2009 Red Hat Inc.
@@ -30,7 +30,7 @@
  *      Jesse Barnes <jesse.bar...@intel.com>
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_fb_helper.c,v 1.18 2021/12/19 00:29:02 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_fb_helper.c,v 1.19 2021/12/19 01:03:22 riastradh Exp $");
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
@@ -87,10 +87,12 @@ MODULE_PARM_DESC(drm_leak_fbdev_smem,
 #ifdef __NetBSD__		/* XXX LIST_HEAD means something else */
 static struct list_head kernel_fb_helper_list =
     LIST_HEAD_INIT(kernel_fb_helper_list);
+#define	kernel_fb_helper_lock	drm_kernel_fb_helper_lock
+struct mutex kernel_fb_helper_lock;
 #else
 static LIST_HEAD(kernel_fb_helper_list);
-#endif
 static DEFINE_MUTEX(kernel_fb_helper_lock);
+#endif
 
 /**
  * DOC: fbdev helpers

Index: src/sys/external/bsd/drm2/dist/drm/drm_internal.h
diff -u src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.8 src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.9
--- src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.8	Sun Dec 19 00:58:30 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_internal.h	Sun Dec 19 01:03:22 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_internal.h,v 1.8 2021/12/19 00:58:30 riastradh Exp $	*/
+/*	$NetBSD: drm_internal.h,v 1.9 2021/12/19 01:03:22 riastradh Exp $	*/
 
 /*
  * Copyright © 2014 Intel Corporation
@@ -247,3 +247,6 @@ int drm_framebuffer_debugfs_init(struct 
 /* drm_hdcp.c */
 int drm_setup_hdcp_srm(struct class *drm_class);
 void drm_teardown_hdcp_srm(struct class *drm_class);
+
+/* drm_fb_helper.c */
+extern struct mutex drm_kernel_fb_helper_lock;

Index: src/sys/external/bsd/drm2/drm/drm_module.c
diff -u src/sys/external/bsd/drm2/drm/drm_module.c:1.20 src/sys/external/bsd/drm2/drm/drm_module.c:1.21
--- src/sys/external/bsd/drm2/drm/drm_module.c:1.20	Sun Dec 19 00:58:31 2021
+++ src/sys/external/bsd/drm2/drm/drm_module.c	Sun Dec 19 01:03:22 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_module.c,v 1.20 2021/12/19 00:58:31 riastradh Exp $	*/
+/*	$NetBSD: drm_module.c,v 1.21 2021/12/19 01:03:22 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_module.c,v 1.20 2021/12/19 00:58:31 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_module.c,v 1.21 2021/12/19 01:03:22 riastradh Exp $");
 
 #include <sys/types.h>
 #include <sys/condvar.h>
@@ -124,6 +124,7 @@ drm_init(void)
 	idr_init(&drm_minors_idr);
 	srcu_init(&drm_unplug_srcu, "drmunplg");
 	linux_mutex_init(&drm_global_mutex);
+	linux_mutex_init(&drm_kernel_fb_helper_lock);
 	drm_connector_ida_init();
 	drm_global_init();
 	drm_panel_init_lock();
@@ -156,6 +157,7 @@ drm_fini(void)
 	drm_panel_fini_lock();
 	drm_global_release();
 	drm_connector_ida_destroy();
+	linux_mutex_destroy(&drm_kernel_fb_helper_lock);
 	linux_mutex_destroy(&drm_global_mutex);
 	srcu_fini(&drm_unplug_srcu);
 	idr_destroy(&drm_minors_idr);

Reply via email to