Hey Benjamin,

Commit 36ee1313199b doesn't cherry-pick cleanly because 7.1 moved the
files to `fs/ntfs/iomap.c`. In Ubuntu 7.0, the driver is still in
`fs/ntfs3/`.

The panic happens because `kmemdup()` in `fs/ntfs3/attrib.c` allocates
slab memory with a non-zero page offset. When file size plus that offset
exceeds 4096, `iomap_inline_data_valid()` fails and hits BUG_ON(). Using
`alloc_page()` fixes this because page memory always starts at offset 0.

Waiting for Artem is tricky since he runs NVIDIA 595, which will break
under mainline 7.3-rc1.

I backported the patch to the Ubuntu 7.0 tree (`fs/ntfs3/`). Attached is
`lp-2165844-ntfs3-iomap-resident-page-alloc.patch`. It applies cleanly
to `Ubuntu-7.0.0-30.30` and builds fine against 7.0 headers.


** Patch added: "Backport of 36ee1313199b for Ubuntu 7.0 fs/ntfs3"
   
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2165844/+attachment/5999683/+files/lp-2165844-ntfs3-iomap-resident-page-alloc.patch

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2165844

Title:
  linux 7.0.0-30: kernel BUG at fs/iomap/buffered-io.c:1061 in
  iomap_write_end() on ntfs3 buffered write

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2165844/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to