|
|
Subscribe / Log in / New account

shmemfs stable directory cookies

From:  Chuck Lever <cel-AT-kernel.org>
To:  hughd-AT-google.com, akpm-AT-linux-foundation.org
Subject:  [PATCH v2 0/5] shmemfs stable directory cookies
Date:  Fri, 05 May 2023 14:37:47 -0400
Message-ID:  <168331111400.20728.2327812215536431362.stgit@oracle-102.nfsv4bat.org>
Cc:  linux-mm-AT-kvack.org, linux-fsdevel-AT-vger.kernel.org
Archive-link:  Article

The following series is for continued discussion of the need for
and implementation of stable directory cookies for shmemfs/tmpfs.

Based on one of Andrew's review comments, I've split this one patch
into a series to (hopefully) reduce its complexity and make it
easier to analyze the changes.

Although the patch(es) have been passing functional tests for
several weeks, there have been some reports of performance
regressions that we still need to get to the bottom of.

We might consider a simpler lseek/readdir implementation, as using
an xarray is effective but a bit of overkill. I'd like to avoid a
linked list implementation as that is known to have significant
performance impact past a dozen or so list entries.

Changes since v1:
- Break the patch up into a series

Changes since RFC:
- Destroy xarray in shmem_destroy_inode() instead of free_in_core_inode()
- A few cosmetic updates

---

Chuck Lever (5):
      shmem: Refactor shmem_symlink()
      shmem: Add dir_operations specific to tmpfs
      shmem: Add a per-directory xarray
      shmem: Add a shmem-specific dir_emit helper
      shmem: stable directory cookies


 include/linux/shmem_fs.h |   2 +
 mm/shmem.c               | 213 ++++++++++++++++++++++++++++++++++++---
 2 files changed, 201 insertions(+), 14 deletions(-)

--
Chuck Lever



Copyright © 2023, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds