Module Name: src
Committed By: riastradh
Date: Sun Dec 19 01:00:17 UTC 2021
Modified Files:
src/sys/external/bsd/drm2/include/linux: idr.h
src/sys/external/bsd/drm2/linux: linux_idr.c
Log Message:
Define idr_init_base.
Nothing actually uses this at the moment, because callers already
specify the base. Not really sure what the point is!
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/external/bsd/drm2/include/linux/idr.h
cvs rdiff -u -r1.12 -r1.13 src/sys/external/bsd/drm2/linux/linux_idr.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/include/linux/idr.h
diff -u src/sys/external/bsd/drm2/include/linux/idr.h:1.7 src/sys/external/bsd/drm2/include/linux/idr.h:1.8
--- src/sys/external/bsd/drm2/include/linux/idr.h:1.7 Mon Aug 27 14:14:42 2018
+++ src/sys/external/bsd/drm2/include/linux/idr.h Sun Dec 19 01:00:17 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: idr.h,v 1.7 2018/08/27 14:14:42 riastradh Exp $ */
+/* $NetBSD: idr.h,v 1.8 2021/12/19 01:00:17 riastradh Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -42,6 +42,7 @@
struct idr {
kmutex_t idr_lock;
rb_tree_t idr_tree;
+ int idr_base;
};
/* XXX Make the nm output a little more greppable... */
@@ -51,6 +52,7 @@ struct idr {
#define idr_for_each linux_idr_for_each
#define idr_get_next linux_idr_get_next
#define idr_init linux_idr_init
+#define idr_init_base linux_idr_init_base
#define idr_is_empty linux_idr_is_empty
#define idr_preload linux_idr_preload
#define idr_preload_end linux_idr_preload_end
@@ -61,6 +63,7 @@ int linux_idr_module_init(void);
void linux_idr_module_fini(void);
void idr_init(struct idr *);
+void idr_init_base(struct idr *, int);
void idr_destroy(struct idr *);
bool idr_is_empty(struct idr *);
void *idr_find(struct idr *, int);
Index: src/sys/external/bsd/drm2/linux/linux_idr.c
diff -u src/sys/external/bsd/drm2/linux/linux_idr.c:1.12 src/sys/external/bsd/drm2/linux/linux_idr.c:1.13
--- src/sys/external/bsd/drm2/linux/linux_idr.c:1.12 Mon Aug 27 15:24:53 2018
+++ src/sys/external/bsd/drm2/linux/linux_idr.c Sun Dec 19 01:00:17 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_idr.c,v 1.12 2018/08/27 15:24:53 riastradh Exp $ */
+/* $NetBSD: linux_idr.c,v 1.13 2021/12/19 01:00:17 riastradh Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_idr.c,v 1.12 2018/08/27 15:24:53 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_idr.c,v 1.13 2021/12/19 01:00:17 riastradh Exp $");
#include <sys/param.h>
#include <sys/atomic.h>
@@ -173,8 +173,17 @@ void
idr_init(struct idr *idr)
{
+ idr_init_base(idr, 0);
+}
+
+void
+idr_init_base(struct idr *idr, int base)
+{
+
mutex_init(&idr->idr_lock, MUTEX_DEFAULT, IPL_VM);
rb_tree_init(&idr->idr_tree, &idr_rb_ops);
+ idr->idr_base = base;
+
SDT_PROBE1(sdt, linux, idr, init, idr);
}