Module Name:    src
Committed By:   riastradh
Date:           Sun Dec 19 12:32:01 UTC 2021

Modified Files:
        src/sys/external/bsd/drm2/dist/drm: drm_connector.c drm_dp_helper.c
            drm_drv.c drm_flip_work.c drm_mode_config.c drm_syncobj.c
            drm_vblank.c

Log Message:
drm: mutex_init/destroy and spin_lock_init/destroy audit


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/external/bsd/drm2/dist/drm/drm_connector.c
cvs rdiff -u -r1.14 -r1.15 src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c
cvs rdiff -u -r1.21 -r1.22 src/sys/external/bsd/drm2/dist/drm/drm_drv.c
cvs rdiff -u -r1.5 -r1.6 src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c
cvs rdiff -u -r1.4 -r1.5 src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c \
    src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c
cvs rdiff -u -r1.13 -r1.14 src/sys/external/bsd/drm2/dist/drm/drm_vblank.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_connector.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_connector.c:1.6 src/sys/external/bsd/drm2/dist/drm/drm_connector.c:1.7
--- src/sys/external/bsd/drm2/dist/drm/drm_connector.c:1.6	Sun Dec 19 11:06:54 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_connector.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_connector.c,v 1.6 2021/12/19 11:06:54 riastradh Exp $	*/
+/*	$NetBSD: drm_connector.c,v 1.7 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2016 Intel Corporation
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_connector.c,v 1.6 2021/12/19 11:06:54 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_connector.c,v 1.7 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <drm/drm_connector.h>
 #include <drm/drm_edid.h>
@@ -38,6 +38,8 @@ __KERNEL_RCSID(0, "$NetBSD: drm_connecto
 #include "drm_crtc_internal.h"
 #include "drm_internal.h"
 
+#include <linux/nbsd-namespace.h>
+
 /**
  * DOC: overview
  *
@@ -256,11 +258,7 @@ int drm_connector_init(struct drm_device
 
 	INIT_LIST_HEAD(&connector->probed_modes);
 	INIT_LIST_HEAD(&connector->modes);
-#ifdef __NetBSD__
-	linux_mutex_init(&connector->mutex);
-#else
 	mutex_init(&connector->mutex);
-#endif
 	connector->edid_blob_ptr = NULL;
 	connector->tile_blob_ptr = NULL;
 	connector->status = connector_status_unknown;
@@ -473,11 +471,7 @@ void drm_connector_cleanup(struct drm_co
 		connector->funcs->atomic_destroy_state(connector,
 						       connector->state);
 
-#ifdef __NetBSD__
-	linux_mutex_destroy(&connector->mutex);
-#else
 	mutex_destroy(&connector->mutex);
-#endif
 
 	memset(connector, 0, sizeof(*connector));
 }

Index: src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c:1.14 src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c:1.15
--- src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c:1.14	Sun Dec 19 00:56:40 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_dp_helper.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_dp_helper.c,v 1.14 2021/12/19 00:56:40 riastradh Exp $	*/
+/*	$NetBSD: drm_dp_helper.c,v 1.15 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * Copyright © 2009 Keith Packard
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_dp_helper.c,v 1.14 2021/12/19 00:56:40 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_dp_helper.c,v 1.15 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/delay.h>
 #include <linux/errno.h>
@@ -1075,6 +1075,7 @@ void drm_dp_aux_unregister(struct drm_dp
 {
 	drm_dp_aux_unregister_devnode(aux);
 	i2c_del_adapter(&aux->ddc);
+	mutex_destroy(&aux->cec.lock);
 	mutex_destroy(&aux->hw_mutex);
 }
 EXPORT_SYMBOL(drm_dp_aux_unregister);

Index: src/sys/external/bsd/drm2/dist/drm/drm_drv.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.21 src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.22
--- src/sys/external/bsd/drm2/dist/drm/drm_drv.c:1.21	Sun Dec 19 11:10:09 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_drv.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_drv.c,v 1.21 2021/12/19 11:10:09 riastradh Exp $	*/
+/*	$NetBSD: drm_drv.c,v 1.22 2021/12/19 12:32:01 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.21 2021/12/19 11:10:09 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.22 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/debugfs.h>
 #include <linux/fs.h>
@@ -761,6 +761,7 @@ err_pswitch:
 	mutex_destroy(&dev->clientlist_mutex);
 	mutex_destroy(&dev->filelist_mutex);
 	mutex_destroy(&dev->struct_mutex);
+	spin_lock_destroy(&dev->event_lock);
 	drm_legacy_destroy_members(dev);
 	return ret;
 }
@@ -843,6 +844,7 @@ void drm_dev_fini(struct drm_device *dev
 	mutex_destroy(&dev->clientlist_mutex);
 	mutex_destroy(&dev->filelist_mutex);
 	mutex_destroy(&dev->struct_mutex);
+	spin_lock_destroy(&dev->event_lock);
 	drm_legacy_destroy_members(dev);
 	kfree(dev->unique);
 }

Index: src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c:1.5 src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c:1.6
--- src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c:1.5	Sat Dec 18 23:44:57 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_flip_work.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_flip_work.c,v 1.5 2021/12/18 23:44:57 riastradh Exp $	*/
+/*	$NetBSD: drm_flip_work.c,v 1.6 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * Copyright (C) 2013 Red Hat
@@ -24,7 +24,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_flip_work.c,v 1.5 2021/12/18 23:44:57 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_flip_work.c,v 1.6 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/slab.h>
 
@@ -171,5 +171,6 @@ EXPORT_SYMBOL(drm_flip_work_init);
 void drm_flip_work_cleanup(struct drm_flip_work *work)
 {
 	WARN_ON(!list_empty(&work->queued) || !list_empty(&work->commited));
+	spin_lock_destroy(&work->lock);
 }
 EXPORT_SYMBOL(drm_flip_work_cleanup);

Index: src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c:1.4 src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c:1.5
--- src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c:1.4	Sun Dec 19 10:47:29 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_mode_config.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_mode_config.c,v 1.4 2021/12/19 10:47:29 riastradh Exp $	*/
+/*	$NetBSD: drm_mode_config.c,v 1.5 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2016 Intel Corporation
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_mode_config.c,v 1.4 2021/12/19 10:47:29 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_mode_config.c,v 1.5 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/uaccess.h>
 
@@ -533,9 +533,14 @@ void drm_mode_config_cleanup(struct drm_
 		drm_framebuffer_free(&fb->base.refcount);
 	}
 
+	spin_lock_destroy(&dev->mode_config.connector_list_lock);
 	ida_destroy(&dev->mode_config.connector_ida);
 	idr_destroy(&dev->mode_config.tile_idr);
 	idr_destroy(&dev->mode_config.object_idr);
+	mutex_destroy(&dev->mode_config.blob_lock);
+	mutex_destroy(&dev->mode_config.fb_lock);
+	mutex_destroy(&dev->mode_config.idr_mutex);
 	drm_modeset_lock_fini(&dev->mode_config.connection_mutex);
+	mutex_destroy(&dev->mode_config.mutex);
 }
 EXPORT_SYMBOL(drm_mode_config_cleanup);
Index: src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c:1.4 src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c:1.5
--- src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c:1.4	Sun Dec 19 10:39:14 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_syncobj.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_syncobj.c,v 1.4 2021/12/19 10:39:14 riastradh Exp $	*/
+/*	$NetBSD: drm_syncobj.c,v 1.5 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * Copyright 2017 Red Hat
@@ -125,7 +125,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_syncobj.c,v 1.4 2021/12/19 10:39:14 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_syncobj.c,v 1.5 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/anon_inodes.h>
 #include <linux/file.h>
@@ -465,6 +465,7 @@ void drm_syncobj_free(struct kref *kref)
 						   struct drm_syncobj,
 						   refcount);
 	drm_syncobj_replace_fence(syncobj, NULL);
+	spin_lock_destroy(&syncobj->lock);
 	kfree(syncobj);
 }
 EXPORT_SYMBOL(drm_syncobj_free);

Index: src/sys/external/bsd/drm2/dist/drm/drm_vblank.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_vblank.c:1.13 src/sys/external/bsd/drm2/dist/drm/drm_vblank.c:1.14
--- src/sys/external/bsd/drm2/dist/drm/drm_vblank.c:1.13	Sun Dec 19 12:24:57 2021
+++ src/sys/external/bsd/drm2/dist/drm/drm_vblank.c	Sun Dec 19 12:32:01 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_vblank.c,v 1.13 2021/12/19 12:24:57 riastradh Exp $	*/
+/*	$NetBSD: drm_vblank.c,v 1.14 2021/12/19 12:32:01 riastradh Exp $	*/
 
 /*
  * drm_irq.c IRQ and vblank support
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_vblank.c,v 1.13 2021/12/19 12:24:57 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_vblank.c,v 1.14 2021/12/19 12:32:01 riastradh Exp $");
 
 #include <linux/export.h>
 #include <linux/moduleparam.h>
@@ -480,6 +480,8 @@ void drm_vblank_cleanup(struct drm_devic
 	kfree(dev->vblank);
 
 	dev->num_crtcs = 0;
+
+	spin_lock_destroy(&dev->vblank_time_lock);
 }
 
 /**

Reply via email to