Module Name:    src
Committed By:   riastradh
Date:           Sun Dec 19 00:58:31 UTC 2021

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

Log Message:
Declare and initialize drm_unplug_srcu our way.


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 src/sys/external/bsd/drm2/dist/drm/drm_drv.c
cvs rdiff -u -r1.7 -r1.8 src/sys/external/bsd/drm2/dist/drm/drm_internal.h
cvs rdiff -u -r1.19 -r1.20 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_drv.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.16 src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.17
--- src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.16	Sun Dec 19 00:57:06 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_drv.c	Sun Dec 19 00:58:30 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_drv.c,v 1.16 2021/12/19 00:57:06 riastradh Exp $	*/
+/*	$NetBSD: drm_drv.c,v 1.17 2021/12/19 00:58:30 riastradh Exp $	*/
 
 /*
  * Created: Fri Jan 19 10:48:35 2001 by fa...@acm.org
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.16 2021/12/19 00:57:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.17 2021/12/19 00:58:30 riastradh Exp $");
 
 #include <linux/debugfs.h>
 #include <linux/fs.h>
@@ -67,7 +67,11 @@ static struct idr drm_minors_idr;
 static struct dentry *drm_debugfs_root;
 #endif
 
+#ifdef __NetBSD__
+struct srcu drm_unplug_srcu;
+#else
 DEFINE_STATIC_SRCU(drm_unplug_srcu);
+#endif
 
 /*
  * DRM Minors

Index: src/sys/external/bsd/drm2/dist/drm/drm_internal.h
diff -u src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.7 src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.8
--- src/sys/external/bsd/drm2/dist/drm/drm_internal.h:1.7	Sun Dec 19 00:57:13 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_internal.h	Sun Dec 19 00:58:30 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_internal.h,v 1.7 2021/12/19 00:57:13 riastradh Exp $	*/
+/*	$NetBSD: drm_internal.h,v 1.8 2021/12/19 00:58:30 riastradh Exp $	*/
 
 /*
  * Copyright © 2014 Intel Corporation
@@ -90,6 +90,8 @@ void drm_prime_remove_buf_handle_locked(
 struct drm_minor *drm_minor_acquire(unsigned int minor_id);
 void drm_minor_release(struct drm_minor *minor);
 #ifdef __NetBSD__
+#include <linux/srcu.h>
+extern struct srcu drm_unplug_srcu;
 extern struct spinlock drm_minor_lock;
 extern struct idr drm_minors_idr;
 #endif

Index: src/sys/external/bsd/drm2/drm/drm_module.c
diff -u src/sys/external/bsd/drm2/drm/drm_module.c:1.19 src/sys/external/bsd/drm2/drm/drm_module.c:1.20
--- src/sys/external/bsd/drm2/drm/drm_module.c:1.19	Sun Dec 19 00:55:26 2021
+++ src/sys/external/bsd/drm2/drm/drm_module.c	Sun Dec 19 00:58:31 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_module.c,v 1.19 2021/12/19 00:55:26 riastradh Exp $	*/
+/*	$NetBSD: drm_module.c,v 1.20 2021/12/19 00:58:31 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.19 2021/12/19 00:55:26 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_module.c,v 1.20 2021/12/19 00:58:31 riastradh Exp $");
 
 #include <sys/types.h>
 #include <sys/condvar.h>
@@ -122,6 +122,7 @@ drm_init(void)
 
 	spin_lock_init(&drm_minor_lock);
 	idr_init(&drm_minors_idr);
+	srcu_init(&drm_unplug_srcu, "drmunplg");
 	linux_mutex_init(&drm_global_mutex);
 	drm_connector_ida_init();
 	drm_global_init();
@@ -156,6 +157,7 @@ drm_fini(void)
 	drm_global_release();
 	drm_connector_ida_destroy();
 	linux_mutex_destroy(&drm_global_mutex);
+	srcu_fini(&drm_unplug_srcu);
 	idr_destroy(&drm_minors_idr);
 	spin_lock_destroy(&drm_minor_lock);
 	drm_agp_hooks_fini();

Reply via email to