diff mbox series

[DRAFT,4/4] : trace: illustrate how to convert basic open functions

Message ID 20240131-tracefs-kernfs-v1-4-f20e2e9a8d61@kernel.org (mailing list archive)
State New, archived
Headers show
Series : Port tracefs to kernfs | expand

Commit Message

Christian Brauner Jan. 31, 2024, 1:36 p.m. UTC
Signed-off-by: Christian Brauner <brauner@kernel.org>
---
 kernel/trace/trace.c | 16 ++++++++--------
 kernel/trace/trace.h |  4 ++--
 2 files changed, 10 insertions(+), 10 deletions(-)
diff mbox series

Patch

diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 3afc2dd51233..b700feada3e0 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -4913,7 +4913,7 @@  __tracing_open(struct inode *inode, struct file *file, bool snapshot)
 	return ERR_PTR(-ENOMEM);
 }
 
-int tracing_open_generic(struct inode *inode, struct file *filp)
+int tracing_open_generic(struct kernfs_open_file *of)
 {
 	int ret;
 
@@ -4921,7 +4921,7 @@  int tracing_open_generic(struct inode *inode, struct file *filp)
 	if (ret)
 		return ret;
 
-	filp->private_data = inode->i_private;
+	of->priv = of->kn->priv;
 	return 0;
 }
 
@@ -4934,17 +4934,16 @@  bool tracing_is_disabled(void)
  * Open and update trace_array ref count.
  * Must have the current trace_array passed to it.
  */
-int tracing_open_generic_tr(struct inode *inode, struct file *filp)
+int tracing_open_generic_tr(struct kernfs_open_file *of)
 {
-	struct trace_array *tr = inode->i_private;
+	struct trace_array *tr = of->kn->priv;
 	int ret;
 
 	ret = tracing_check_open_get_tr(tr);
 	if (ret)
 		return ret;
 
-	filp->private_data = inode->i_private;
-
+	of->priv = of->kn->priv;
 	return 0;
 }
 
@@ -5057,9 +5056,10 @@  static int tracing_single_release_tr(struct inode *inode, struct file *file)
 	return single_release(inode, file);
 }
 
-static int tracing_open(struct inode *inode, struct file *file)
+static int tracing_open(struct kernfs_open_file *of)
 {
-	struct trace_array *tr = inode->i_private;
+	struct trace_array *tr = of->kn->priv;
+	struct file *filp = of->file;
 	struct trace_iterator *iter;
 	int ret;
 
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
index 00f873910c5d..d91420a6c2e8 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
@@ -614,8 +614,8 @@  int tracing_is_enabled(void);
 void tracing_reset_online_cpus(struct array_buffer *buf);
 void tracing_reset_all_online_cpus(void);
 void tracing_reset_all_online_cpus_unlocked(void);
-int tracing_open_generic(struct inode *inode, struct file *filp);
-int tracing_open_generic_tr(struct inode *inode, struct file *filp);
+int tracing_open_generic(struct kernfs_open_file *of);
+int tracing_open_generic_tr(struct kernfs_open_file *of);
 int tracing_release_generic_tr(struct inode *inode, struct file *file);
 int tracing_open_file_tr(struct inode *inode, struct file *filp);
 int tracing_release_file_tr(struct inode *inode, struct file *filp);