# git rev-parse -q --verify b08968f196d498b19e9d0841d76a03862258f2d8^{commit} b08968f196d498b19e9d0841d76a03862258f2d8 already have revision, skipping fetch # git checkout -q -f -B kisskb b08968f196d498b19e9d0841d76a03862258f2d8 # git clean -qxdf # < git log -1 # commit b08968f196d498b19e9d0841d76a03862258f2d8 # Author: David Howells # Date: Thu Mar 3 13:05:18 2022 +0000 # # cachefiles: Fix incorrect length to fallocate() # # When cachefiles_shorten_object() calls fallocate() to shape the cache # file to match the DIO size, it passes the total file size it wants to # achieve, not the amount of zeros that should be inserted. Since this is # meant to preallocate that amount of storage for the file, it can cause # the cache to fill up the disk and hit ENOSPC. # # Fix this by passing the length actually required to go from the current # EOF to the desired EOF. # # Fixes: 7623ed6772de ("cachefiles: Implement cookie resize for truncate") # Reported-by: Jeffle Xu # Signed-off-by: David Howells # Tested-by: Jeff Layton # Reviewed-by: Jeff Layton # cc: linux-cachefs@redhat.com # Link: https://lore.kernel.org/r/164630854858.3665356.17419701804248490708.stgit@warthog.procyon.org.uk # v1 # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux-ld --version # < git log --format=%s --max-count=1 b08968f196d498b19e9d0841d76a03862258f2d8 # < make -s -j 8 ARCH=sparc64 O=/kisskb/build/linus_sparc64-defconfig_sparc64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux- defconfig # < make -s -j 8 ARCH=sparc64 O=/kisskb/build/linus_sparc64-defconfig_sparc64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux- help # make -s -j 8 ARCH=sparc64 O=/kisskb/build/linus_sparc64-defconfig_sparc64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux- olddefconfig # make -s -j 8 ARCH=sparc64 O=/kisskb/build/linus_sparc64-defconfig_sparc64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/sparc64-linux/bin/sparc64-linux- :1517:2: warning: #warning syscall clone3 not implemented [-Wcpp] WARNING: modpost: EXPORT symbol "_mcount" [vmlinux] version ... Is "_mcount" prototyped in ? kernel: arch/sparc/boot/image is ready kernel: arch/sparc/boot/zImage is ready Completed OK # rm -rf /kisskb/build/linus_sparc64-defconfig_sparc64-gcc11 # Build took: 0:02:44.010593