git: aca0bcbca344 - main - linuxkpi: Move cdev_alloc into .c file

From: Warner Losh <imp_at_FreeBSD.org>
Date: Tue, 05 Apr 2022 05:10:03 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=aca0bcbca344b39f2a448e8c1c0d80bac8c0d6de

commit aca0bcbca344b39f2a448e8c1c0d80bac8c0d6de
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2022-04-05 05:05:59 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2022-04-05 05:05:59 +0000

    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
---
 sys/compat/linuxkpi/common/include/linux/cdev.h | 13 ++-----------
 sys/compat/linuxkpi/common/src/linux_compat.c   | 11 +++++++++++
 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)