linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Chuck Lever <cel@kernel.org>
To: hughd@google.com, akpm@linux-foundation.org
Cc: linux-mm@kvack.org, linux-fsdevel@vger.kernel.org
Subject: [PATCH v2 0/5] shmemfs stable directory cookies
Date: Fri, 05 May 2023 14:37:47 -0400	[thread overview]
Message-ID: <168331111400.20728.2327812215536431362.stgit@oracle-102.nfsv4bat.org> (raw)

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


             reply	other threads:[~2023-05-05 18:38 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-05 18:37 Chuck Lever [this message]
2023-05-05 18:38 ` [PATCH v2 1/5] shmem: Refactor shmem_symlink() Chuck Lever
2023-05-05 18:38 ` [PATCH v2 2/5] shmem: Add dir_operations specific to tmpfs Chuck Lever
2023-05-05 18:39 ` [PATCH v2 3/5] shmem: Add a per-directory xarray Chuck Lever
2023-05-05 18:39 ` [PATCH v2 4/5] shmem: Add a shmem-specific dir_emit helper Chuck Lever
2023-05-05 18:39 ` [PATCH v2 5/5] shmem: stable directory cookies Chuck Lever

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=168331111400.20728.2327812215536431362.stgit@oracle-102.nfsv4bat.org \
    --to=cel@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=hughd@google.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).