svn commit: r347892 - in head/sys: compat/linuxkpi/common/include/linux modules/linuxkpi
Johannes Lundberg
johalun at FreeBSD.org
Thu May 16 21:17:19 UTC 2019
Author: johalun
Date: Thu May 16 21:17:18 2019
New Revision: 347892
URL: https://svnweb.freebsd.org/changeset/base/347892
Log:
LinuxKPI: Finalize import of seq_file.
seq_file.h and linux_seq_file.c was imported form ports earlier but
linux_seq_file.c was never compiled in with the module. With this
commit base seq_file will replace ports seq_file and it required a
few modifications to not break functionality and build.
Reviewed by: hps
Approved by: imp (mentor), hps
MFC after: 1 week
Modified:
head/sys/compat/linuxkpi/common/include/linux/seq_file.h
head/sys/modules/linuxkpi/Makefile
Modified: head/sys/compat/linuxkpi/common/include/linux/seq_file.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/seq_file.h Thu May 16 21:07:37 2019 (r347891)
+++ head/sys/compat/linuxkpi/common/include/linux/seq_file.h Thu May 16 21:17:18 2019 (r347892)
@@ -30,13 +30,29 @@
#ifndef _LINUX_SEQ_FILE_H_
#define _LINUX_SEQ_FILE_H_
+#include <linux/types.h>
+#include <linux/fs.h>
#include <sys/sbuf.h>
-struct seq_operations;
-struct linux_file;
-
+#undef file
#define inode vnode
+#define DEFINE_SHOW_ATTRIBUTE(__name) \
+static int __name ## _open(struct inode *inode, struct linux_file *file) \
+{ \
+ return single_open(file, __name ## _show, inode->i_private); \
+} \
+ \
+static const struct file_operations __name ## _fops = { \
+ .owner = THIS_MODULE, \
+ .open = __name ## _open, \
+ .read = seq_read, \
+ .llseek = seq_lseek, \
+ .release = single_release, \
+}
+
+struct seq_operations;
+
struct seq_file {
struct sbuf *buf;
@@ -67,5 +83,6 @@ int single_release(struct inode *, struct linux_file *
#define seq_puts(m, str) sbuf_printf((m)->buf, str)
#define seq_putc(m, str) sbuf_putc((m)->buf, str)
+#define file linux_file
#endif /* _LINUX_SEQ_FILE_H_ */
Modified: head/sys/modules/linuxkpi/Makefile
==============================================================================
--- head/sys/modules/linuxkpi/Makefile Thu May 16 21:07:37 2019 (r347891)
+++ head/sys/modules/linuxkpi/Makefile Thu May 16 21:17:18 2019 (r347892)
@@ -13,6 +13,7 @@ SRCS= linux_compat.c \
linux_pci.c \
linux_radix.c \
linux_rcu.c \
+ linux_seq_file.c \
linux_schedule.c \
linux_slab.c \
linux_tasklet.c \
More information about the svn-src-head
mailing list