[PATCH v2 0/2] eventfs: Don't use dcache_readdir() for getdents()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



After having a "pleasant" conversation with Linus over on the security
mailing list, we came to the conclusion that eventfs should not be
using the dcache_readdir() routine for iterating the entries of a
directory (getdents()).

Instead, the .open and .release callbacks of the directory file
operations was removed and all the work is now done in the .iterate_shared.

The function dcache_readdir_wrapper() was renamed to eventfs_iterate().

As the files and directories of eventfs is all known within the meta
data, it can easily supply getdents() with the information it needs without
traversing the dentry.

Changes since v1: https://lore.kernel.org/linux-trace-kernel/20240103102553.17a19cea@xxxxxxxxxxxxxxxxxx/

- Broke up into two patches, one to fix the lookup parameter and the
  other to do the meat of the change.

- Moved the ctx->pos count up to skip creating of dentries in those cases.


Steven Rostedt (Google) (2):
      eventfs: Remove "lookup" parameter from create_dir/file_dentry()
      eventfs: Stop using dcache_readdir() for getdents()

----
 fs/tracefs/event_inode.c | 241 ++++++++++++++++-------------------------------
 1 file changed, 80 insertions(+), 161 deletions(-)




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux