diff options
author | Warner Losh <imp@FreeBSD.org> | 2022-04-05 05:05:59 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2022-04-05 05:05:59 +0000 |
commit | aca0bcbca344b39f2a448e8c1c0d80bac8c0d6de (patch) | |
tree | 439760ce84900ecd2b26d1c737e9da09b883882b | |
parent | 58e6719ca06991a92b67630b634ddd25a9c2c3bf (diff) | |
download | src-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.h | 13 | ||||
-rw-r--r-- | 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) |