aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2022-04-05 05:05:59 +0000
committerWarner Losh <imp@FreeBSD.org>2022-04-05 05:05:59 +0000
commitaca0bcbca344b39f2a448e8c1c0d80bac8c0d6de (patch)
tree439760ce84900ecd2b26d1c737e9da09b883882b
parent58e6719ca06991a92b67630b634ddd25a9c2c3bf (diff)
downloadsrc-aca0bcbca344b39f2a448e8c1c0d80bac8c0d6de.tar.gz
src-aca0bcbca344b39f2a448e8c1c0d80bac8c0d6de.zip
linuxkpi: Move cdev_alloc into .c file
Move cdev_alloc into linux_compat.c since it encodes the size of struct linux_cdev into the client modules otherwise. Sponsored by: Netflix Reviewed by: hselasky, emaste Differential Revision: https://reviews.freebsd.org/D34771
-rw-r--r--sys/compat/linuxkpi/common/include/linux/cdev.h13
-rw-r--r--sys/compat/linuxkpi/common/src/linux_compat.c11
2 files changed, 13 insertions, 11 deletions
diff --git a/sys/compat/linuxkpi/common/include/linux/cdev.h b/sys/compat/linuxkpi/common/include/linux/cdev.h
index fb7a3cf0b447..2befe9b259cb 100644
--- a/sys/compat/linuxkpi/common/include/linux/cdev.h
+++ b/sys/compat/linuxkpi/common/include/linux/cdev.h
@@ -57,6 +57,8 @@ struct linux_cdev {
u_int siref;
};
+struct linux_cdev *cdev_alloc(void);
+
static inline void
cdev_init(struct linux_cdev *cdev, const struct file_operations *ops)
{
@@ -66,17 +68,6 @@ cdev_init(struct linux_cdev *cdev, const struct file_operations *ops)
cdev->refs = 1;
}
-static inline struct linux_cdev *
-cdev_alloc(void)
-{
- struct linux_cdev *cdev;
-
- cdev = kzalloc(sizeof(struct linux_cdev), M_WAITOK);
- kobject_init(&cdev->kobj, &linux_cdev_ktype);
- cdev->refs = 1;
- return (cdev);
-}
-
static inline void
cdev_put(struct linux_cdev *p)
{
diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c
index 404b0e0857a5..52dc010b100f 100644
--- a/sys/compat/linuxkpi/common/src/linux_compat.c
+++ b/sys/compat/linuxkpi/common/src/linux_compat.c
@@ -602,6 +602,17 @@ linux_file_free(struct linux_file *filp)
}
}
+struct linux_cdev *
+cdev_alloc(void)
+{
+ struct linux_cdev *cdev;
+
+ cdev = kzalloc(sizeof(struct linux_cdev), M_WAITOK);
+ kobject_init(&cdev->kobj, &linux_cdev_ktype);
+ cdev->refs = 1;
+ return (cdev);
+}
+
static int
linux_cdev_pager_fault(vm_object_t vm_obj, vm_ooffset_t offset, int prot,
vm_page_t *mres)