All of lore.kernel.org
 help / color / mirror / Atom feed
From: cel@kernel.org
To: Hugh Dickens <hughd@google.com>,
	Christian Brauner <brauner@kernel.org>,
	Al Viro <viro@zeniv.linux.org.uk>
Cc: <linux-fsdevel@vger.kernel.org>, <linux-mm@kvack.org>,
	yukuai3@huawei.com, yangerkun@huaweicloud.com,
	Chuck Lever <chuck.lever@oracle.com>
Subject: [PATCH v4 0/5] Improve simple directory offset wrap behavior
Date: Wed,  4 Dec 2024 10:52:51 -0500	[thread overview]
Message-ID: <20241204155257.1110338-1-cel@kernel.org> (raw)

From: Chuck Lever <chuck.lever@oracle.com>

The purpose of this series is to construct a set of upstream fixes
that can be backported to v6.6 to address CVE-2024-46701.

My original plan was to add a cursor dentry. However, I've found a
solution that does not need one. In fact, most or all of the
reported issues are gone with 4/5. Thus I'm not sure 5/5 is
necessary, but it seems like a robust improvement.

Changes since v3:
- Series is no longer RFC
- Series passes xfstests locally and via NFS export
- Patch 2/5 was replaced; it now removes simple_offset_empty()
- 4/5 and 5/5 were rewritten based on test results
- Patch descriptions have been clarified

This series (still against v6.12) has been pushed to:

https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git/log/?h=tmpfs-fixes

Next step is to try backporting these to v6.6 to see if anything
else is needed.

Chuck Lever (5):
  libfs: Return ENOSPC when the directory offset range is exhausted
  Revert "libfs: Add simple_offset_empty()"
  Revert "libfs: fix infinite directory reads for offset dir"
  libfs: Replace simple_offset end-of-directory detection
  libfs: Use d_children list to iterate simple_offset directories

 fs/libfs.c         | 158 ++++++++++++++++++++++-----------------------
 include/linux/fs.h |   1 -
 mm/shmem.c         |   4 +-
 3 files changed, 81 insertions(+), 82 deletions(-)

-- 
2.47.0


             reply	other threads:[~2024-12-04 15:53 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-04 15:52 cel [this message]
2024-12-04 15:52 ` [PATCH v4 1/5] libfs: Return ENOSPC when the directory offset range is exhausted cel
2024-12-04 15:52 ` [PATCH v4 2/5] Revert "libfs: Add simple_offset_empty()" cel
2024-12-04 15:52 ` [PATCH v4 3/5] Revert "libfs: fix infinite directory reads for offset dir" cel
2024-12-04 15:52 ` [PATCH v4 4/5] libfs: Replace simple_offset end-of-directory detection cel
2024-12-04 15:52 ` [PATCH v4 5/5] libfs: Use d_children list to iterate simple_offset directories cel
2024-12-08 17:11   ` Chuck Lever
2024-12-14 17:13     ` Chuck Lever
2024-12-14 17:49       ` Al Viro
2024-12-14 19:22         ` Chuck Lever
2024-12-14 19:59           ` Al Viro
2024-12-05 17:09 ` [PATCH v4 0/5] Improve simple directory offset wrap behavior Christian Brauner
2024-12-05 22:16 ` 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=20241204155257.1110338-1-cel@kernel.org \
    --to=cel@kernel.org \
    --cc=brauner@kernel.org \
    --cc=chuck.lever@oracle.com \
    --cc=hughd@google.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=viro@zeniv.linux.org.uk \
    --cc=yangerkun@huaweicloud.com \
    --cc=yukuai3@huawei.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.