Thread (3 messages) 3 messages, 2 authors, 2024-01-26

Re: [RESEND] [PATCH] eventfs: Have inodes have unique inode numbers

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2024-01-26 21:27:27
Also in: linux-fsdevel, lkml

On Fri, 26 Jan 2024 15:24:17 -0500
Mathieu Desnoyers [off-list ref] wrote:
On 2024-01-26 15:12, Steven Rostedt wrote:
[...]
quoted
diff --git a/fs/tracefs/inode.c b/fs/tracefs/inode.c
index e1b172c0e091..2187be6d7b23 100644
--- a/fs/tracefs/inode.c
+++ b/fs/tracefs/inode.c
@@ -223,13 +223,41 @@ static const struct inode_operations tracefs_file_inode_operations = {
  	.setattr	= tracefs_setattr,
  };
  
+/* Copied from get_next_ino() but adds allocation for multiple inodes */
+#define LAST_INO_BATCH 1024
+#define LAST_INO_MASK (~(LAST_INO_BATCH - 1))
+static DEFINE_PER_CPU(unsigned int, last_ino);
+
+unsigned int tracefs_get_next_ino(int files)
+{
+	unsigned int *p = &get_cpu_var(last_ino);
+	unsigned int res = *p;
+
+#ifdef CONFIG_SMP
+	/* Check if adding files+1 overflows */  
How does it handle a @files input where:

* (files+1 > LAST_INO_BATCH) ?

* (files+1 == LAST_INO_BATCH) ?
Well, this is moot anyway, as Linus hates it.

-- Steve
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help