]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Merge tag 'hfs-v6.17-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/hfs
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 28 Jul 2025 23:17:44 +0000 (16:17 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 28 Jul 2025 23:17:44 +0000 (16:17 -0700)
Pull hfs/hfsplus updates from Viacheslav Dubeyko:
 "Johannes Thumshirn has made nice cleanup in hfsplus_submit_bio().

  Tetsuo Handa has fixed the syzbot reported issue in
  hfsplus_create_attributes_file() for the case of corruption the
  Attributes File's metadata.

  Yangtao Li has fixed the syzbot reported issue by removing the
  uneccessary WARN_ON() in hfsplus_free_extents().

  Other fixes:

   - restore generic/001 successful execution by erasing deleted b-tree
     nodes

   - eliminate slab-out-of-bounds issue in hfs_bnode_read() and
     hfsplus_bnode_read() by checking correctness of offset and length
     when accessing b-tree node contents

   - eliminate slab-out-of-bounds read in hfsplus_uni2asc() if the
     b-tree node record has corrupted length of a name that could be
     bigger than HFSPLUS_MAX_STRLEN

   - eliminate general protection fault in hfs_find_init() for the case
     of initial b-tree object creation"

* tag 'hfs-v6.17-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/hfs:
  hfs: fix general protection fault in hfs_find_init()
  hfs: fix slab-out-of-bounds in hfs_bnode_read()
  hfsplus: fix slab-out-of-bounds in hfsplus_bnode_read()
  hfsplus: fix slab-out-of-bounds read in hfsplus_uni2asc()
  hfsplus: don't use BUG_ON() in hfsplus_create_attributes_file()
  hfsplus: don't set REQ_SYNC for hfsplus_submit_bio()
  hfsplus: remove mutex_lock check in hfsplus_free_extents
  hfs: make splice write available again
  hfsplus: make splice write available again
  hfs: fix not erasing deleted b-tree node issue

1  2 
fs/hfs/hfs_fs.h
fs/hfs/inode.c
fs/hfsplus/inode.c
fs/hfsplus/super.c

diff --cc fs/hfs/hfs_fs.h
Simple merge
diff --cc fs/hfs/inode.c
index 03b9d1523acf1f91e9150aba8fdbdf7635a13405,451115360f73a0badf99c9863d0eba010e3fdac9..bf4cb7e78396bd0b84fef3f0593f67de41da5611
@@@ -690,8 -690,9 +690,9 @@@ static const struct file_operations hfs
        .llseek         = generic_file_llseek,
        .read_iter      = generic_file_read_iter,
        .write_iter     = generic_file_write_iter,
 -      .mmap           = generic_file_mmap,
 +      .mmap_prepare   = generic_file_mmap_prepare,
        .splice_read    = filemap_splice_read,
+       .splice_write   = iter_file_splice_write,
        .fsync          = hfs_file_fsync,
        .open           = hfs_file_open,
        .release        = hfs_file_release,
index 9d5c82b2dc41d70df4a6d45bbaf9a22e8e39b81a,c85b5802ec0f959645b4774fe9f964bdbb3d31ed..b51a411ecd2376437675df629f4dfe78c1c94363
@@@ -368,8 -366,9 +368,9 @@@ static const struct file_operations hfs
        .llseek         = generic_file_llseek,
        .read_iter      = generic_file_read_iter,
        .write_iter     = generic_file_write_iter,
 -      .mmap           = generic_file_mmap,
 +      .mmap_prepare   = generic_file_mmap_prepare,
        .splice_read    = filemap_splice_read,
+       .splice_write   = iter_file_splice_write,
        .fsync          = hfsplus_file_fsync,
        .open           = hfsplus_file_open,
        .release        = hfsplus_file_release,
Simple merge