All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christian Brauner <brauner@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Christian Brauner <brauner@kernel.org>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [GIT PULL] vfs misc
Date: Sat, 18 Jan 2025 13:58:51 +0100	[thread overview]
Message-ID: <20250118-vfs-misc-84fb5265d102@brauner> (raw)

Hey Linus,

/* Summary */

Features:

- Support caching symlink lengths in inodes.

  The size is stored in a new union utilizing the same space as
  i_devices, thus avoiding growing the struct or taking up any more
  space.

  When utilized it dodges strlen() in vfs_readlink(), giving about 1.5%
  speed up when issuing readlink on /initrd.img on ext4.

- Add RWF_DONTCACHE iocb and FOP_DONTCACHE file_operations flag.

  If a file system supports uncached buffered IO, it may set
  FOP_DONTCACHE and enable support for RWF_DONTCACHE. If RWF_DONTCACHE
  is attempted without the file system supporting it, it'll get errored
  with -EOPNOTSUPP.

- Enable VBOXGUEST and VBOXSF_FS on ARM64

  Now that VirtualBox is able to run as a host on arm64 (e.g. the Apple
  M3 processors) we can enable VBOXSF_FS (and in turn VBOXGUEST) for
  this architecture. Tested with various runs of bonnie++ and dbench on
  an Apple MacBook Pro with the latest Virtualbox 7.1.4 r165100
  installed.

Cleanups:

- Delay sysctl_nr_open check in expand_files().

- Use kernel-doc includes in fiemap docbook.

- Use page->private instead of page->index in watch_queue.

- Use a consume fence in mnt_idmap() as it's heavily used in
  link_path_walk().

- Replace magic number 7 with ARRAY_SIZE() in fc_log.

- Sort out a stale comment about races between fd alloc and dup2().

- Fix return type of do_mount() from long to int.

- Various cosmetic cleanups for the lockref code.

Fixes:

- Annotate spinning as unlikely() in __read_seqcount_begin.

  The annotation already used to be there, but got lost in
  52ac39e5db5148f7 ("seqlock: seqcount_t: Implement all read APIs as
  statement expressions").

- Fix proc_handler for sysctl_nr_open.

- Flush delayed work in delayed fput().

- Fix grammar and spelling in propagate_umount().

- Fix ESP not readable during coredump.

  In /proc/PID/stat, there is the kstkesp field which is the stack
  pointer of a thread. While the thread is active, this field reads
  zero. But during a coredump, it should have a valid value.

  However, at the moment, kstkesp is zero even during coredump.

- Don't wake up the writer if the pipe is still full.

- Fix unbalanced user_access_end() in select code.

/* Testing */

gcc version 14.2.0 (Debian 14.2.0-6)
Debian clang version 16.0.6 (27+b1)

No build failures or warnings were observed.

/* Conflicts */

Merge conflicts with mainline
=============================

No known conflicts.

Merge conflicts with other trees
================================

No known conflicts.

The following changes since commit 40384c840ea1944d7c5a392e8975ed088ecf0b37:

  Linux 6.13-rc1 (2024-12-01 14:28:56 -0800)

are available in the Git repository at:

  git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.14-rc1.misc

for you to fetch changes up to c859df526b203497227b2b16c9bebcede67221e4:

  Merge patch series "lockref cleanups" (2025-01-16 11:48:12 +0100)

Please consider pulling these changes from the signed vfs-6.14-rc1.misc tag.

Thanks!
Christian

----------------------------------------------------------------
vfs-6.14-rc1.misc

----------------------------------------------------------------
Christian Brauner (4):
      Merge patch series "symlink length caching"
      Merge branch 'vfs-6.14.uncached_buffered_io'
      Merge patch series "fix reading ESP during coredump"
      Merge patch series "lockref cleanups"

Christian Kujau (1):
      vbox: Enable VBOXGUEST and VBOXSF_FS on ARM64

Christoph Hellwig (8):
      lockref: remove lockref_put_not_zero
      lockref: improve the lockref_get_not_zero description
      lockref: use bool for false/true returns
      lockref: drop superfluous externs
      lockref: add a lockref_init helper
      dcache: use lockref_init for d_lockref
      erofs: use lockref_init for pcl->lockref
      gfs2: use lockref_init for qd_lockref

Christophe Leroy (1):
      select: Fix unbalanced user_access_end()

Guo Weikang (1):
      fs: fc_log replace magic number 7 with ARRAY_SIZE()

Jens Axboe (1):
      fs: add RWF_DONTCACHE iocb and FOP_DONTCACHE file_operations flag

Jinliang Zheng (1):
      fs: fix proc_handler for sysctl_nr_open

Mateusz Guzik (7):
      fs: delay sysctl_nr_open check in expand_files()
      vfs: support caching symlink lengths in inodes
      seqlock: annotate spinning as unlikely() in __read_seqcount_begin
      ext4: use inode_set_cached_link()
      tmpfs: use inode_set_cached_link()
      fs: use a consume fence in mnt_idmap()
      fs: sort out a stale comment about races between fd alloc and dup2

Matthew Wilcox (Oracle) (1):
      watch_queue: Use page->private instead of page->index

Nam Cao (2):
      fs/proc: do_task_stat: Fix ESP not readable during coredump
      selftests: coredump: Add stackdump test

Oleg Nesterov (1):
      pipe_read: don't wake up the writer if the pipe is still full

Randy Dunlap (1):
      fiemap: use kernel-doc includes in fiemap docbook

Sentaro Onizuka (1):
      fs: Fix return type of do_mount() from long to int

Zhu Jun (1):
      fs: Fix grammar and spelling in propagate_umount()

shao mingyin (1):
      file: flush delayed work in delayed fput()

 Documentation/filesystems/fiemap.rst              |  49 +++----
 drivers/virt/vboxguest/Kconfig                    |   2 +-
 fs/dcache.c                                       |   3 +-
 fs/erofs/zdata.c                                  |   3 +-
 fs/ext4/inode.c                                   |   3 +-
 fs/ext4/namei.c                                   |   4 +-
 fs/file.c                                         |  22 +---
 fs/file_table.c                                   |   7 +-
 fs/fs_context.c                                   |   2 +-
 fs/gfs2/quota.c                                   |   3 +-
 fs/namei.c                                        |  34 ++---
 fs/namespace.c                                    |   2 +-
 fs/pipe.c                                         |  19 +--
 fs/pnode.c                                        |   8 +-
 fs/proc/array.c                                   |   2 +-
 fs/proc/namespaces.c                              |   2 +-
 fs/select.c                                       |   4 +-
 fs/vboxsf/Kconfig                                 |   2 +-
 include/linux/fiemap.h                            |  16 ++-
 include/linux/fs.h                                |  29 ++++-
 include/linux/lockref.h                           |  26 ++--
 include/linux/mount.h                             |   4 +-
 include/linux/seqlock.h                           |   2 +-
 include/uapi/linux/fiemap.h                       |  47 +++++--
 include/uapi/linux/fs.h                           |   6 +-
 kernel/watch_queue.c                              |   4 +-
 lib/lockref.c                                     |  60 +++------
 mm/shmem.c                                        |   6 +-
 security/apparmor/apparmorfs.c                    |   2 +-
 tools/testing/selftests/coredump/Makefile         |   7 +
 tools/testing/selftests/coredump/README.rst       |  50 +++++++
 tools/testing/selftests/coredump/stackdump        |  14 ++
 tools/testing/selftests/coredump/stackdump_test.c | 151 ++++++++++++++++++++++
 33 files changed, 415 insertions(+), 180 deletions(-)
 create mode 100644 tools/testing/selftests/coredump/Makefile
 create mode 100644 tools/testing/selftests/coredump/README.rst
 create mode 100755 tools/testing/selftests/coredump/stackdump
 create mode 100644 tools/testing/selftests/coredump/stackdump_test.c

             reply	other threads:[~2025-01-18 12:59 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-18 12:58 Christian Brauner [this message]
2025-01-20 18:59 ` [GIT PULL] vfs misc pr-tracker-bot
  -- strict thread matches above, loose matches on Subject: below --
2025-03-22 10:12 Christian Brauner
2025-03-24 16:20 ` Linus Torvalds
2025-03-24 17:09   ` Mateusz Guzik
2025-03-24 21:00 ` pr-tracker-bot
2024-11-15 13:56 Christian Brauner
2024-11-18 19:49 ` pr-tracker-bot
2024-09-13 14:41 Christian Brauner
2024-09-16  7:34 ` pr-tracker-bot
2024-05-10 11:46 Christian Brauner
2024-05-13 19:38 ` pr-tracker-bot
2024-03-08 10:09 Christian Brauner
2024-03-11 18:33 ` pr-tracker-bot
2023-06-23 11:01 [GIT PULL] vfs: misc Christian Brauner
2023-06-26 17:34 ` pr-tracker-bot
2020-06-10 20:30 [git pull] vfs misc Al Viro
2020-06-11  1:50 ` pr-tracker-bot

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=20250118-vfs-misc-84fb5265d102@brauner \
    --to=brauner@kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.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 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.